]> Pileus Git - ~andy/gtk/commitdiff
Set accessible parents of notebook children
authorMatthias Clasen <mclasen@redhat.com>
Sun, 3 Jul 2011 19:06:44 +0000 (15:06 -0400)
committerMatthias Clasen <mclasen@redhat.com>
Tue, 5 Jul 2011 20:10:26 +0000 (16:10 -0400)
Explicitly set the notebook page object as the accessible parent
of the page, otherwise, AtkObject follows the widget parents chain
and makes the notebook accessible the parent.

gtk/a11y/gtknotebookpageaccessible.c

index 3e3dfc2ce50045d732dba9ceaedf1cdfdb433d52..3b4aaec9524c728c3d1ef40bdf935ab03d20da34 100644 (file)
@@ -238,6 +238,8 @@ gtk_notebook_page_accessible_new (GtkNotebookAccessible *notebook,
   atk_object->role = ATK_ROLE_PAGE_TAB;
   atk_object->layer = ATK_LAYER_WIDGET;
 
+  atk_object_set_parent (gtk_widget_get_accessible (child), atk_object);
+
   g_signal_connect (gtk_accessible_get_widget (page->notebook),
                     "child-notify::tab-label",
                     G_CALLBACK (notify_tab_label), page);
@@ -258,6 +260,7 @@ gtk_notebook_page_accessible_invalidate (GtkNotebookPageAccessible *page)
   atk_object_notify_state_change (obj, ATK_STATE_DEFUNCT, TRUE);
   atk_object_set_parent (obj, NULL);
   page->notebook = NULL;
+  atk_object_set_parent (gtk_widget_get_accessible (page->child), NULL);
   page->child = NULL;
 }