Chain up custom_tag_start() propertly.

Fixes bug #675899 "Infobar not loadable by GTKBuilder (using python gi introspection)"
This commit is contained in:
Juan Pablo Ugarte 2012-05-18 16:05:16 -03:00
parent f4378aa19e
commit a893e3ce1d
2 changed files with 9 additions and 5 deletions

View File

@ -1012,10 +1012,11 @@ gtk_info_bar_buildable_custom_tag_start (GtkBuildable *buildable,
{
ActionWidgetsSubParserData *parser_data;
if (child)
return FALSE;
if (parent_buildable_iface->custom_tag_start (buildable, builder, child,
tagname, parser, data))
return TRUE;
if (strcmp (tagname, "action-widgets") == 0)
if (!child && strcmp (tagname, "action-widgets") == 0)
{
parser_data = g_slice_new0 (ActionWidgetsSubParserData);
parser_data->info_bar = GTK_INFO_BAR (buildable);
@ -1026,8 +1027,7 @@ gtk_info_bar_buildable_custom_tag_start (GtkBuildable *buildable,
return TRUE;
}
return parent_buildable_iface->custom_tag_start (buildable, builder, child,
tagname, parser, data);
return FALSE;
}
static void

View File

@ -2527,6 +2527,9 @@ test_message_area (void)
" <property name=\"label\" translatable=\"yes\">Message</property>"
" </object>"
" </child>"
" <packing>"
" <property name='expand'>False</property>"
" </packing>"
" </object>"
" </child>"
" <child internal-child=\"action_area\">"
@ -2684,3 +2687,4 @@ main (int argc, char **argv)
return g_test_run();
}