summaryrefslogtreecommitdiff
path: root/gtk/gtkradiomenuitem.c
diff options
context:
space:
mode:
authorBenjamin Otte <otte@redhat.com>2011-07-06 18:43:07 +0200
committerBenjamin Otte <otte@redhat.com>2011-07-06 18:47:00 +0200
commit552113131cedf405d2e935bf9e163539a2f30856 (patch)
treec62421bb828db4d880a9655b9edd1358c254c90e /gtk/gtkradiomenuitem.c
parent70b8f8f7efa049ec98092e08c0ef53a50aa52c14 (diff)
downloadgtk+-552113131cedf405d2e935bf9e163539a2f30856.tar.gz
menuitems: Use submenuitem accessible exclusively
Submenus can come and go, so we cannot use an accessible that doesn't allow for that. Also, this fixes a rather large refleak.
Diffstat (limited to 'gtk/gtkradiomenuitem.c')
-rw-r--r--gtk/gtkradiomenuitem.c21
1 files changed, 2 insertions, 19 deletions
diff --git a/gtk/gtkradiomenuitem.c b/gtk/gtkradiomenuitem.c
index a17a0ee2ee..e596976190 100644
--- a/gtk/gtkradiomenuitem.c
+++ b/gtk/gtkradiomenuitem.c
@@ -394,24 +394,6 @@ gtk_radio_menu_item_get_group (GtkRadioMenuItem *radio_menu_item)
return radio_menu_item->priv->group;
}
-static AtkObject *
-gtk_radio_menu_item_get_accessible (GtkWidget *widget)
-{
- GObject *object;
- AtkObject *accessible;
-
- /* FIXME this is not really right, submenus can come and go */
- if (gtk_menu_item_get_submenu (GTK_MENU_ITEM (widget)))
- object = g_object_new (GTK_TYPE_RADIO_SUBMENU_ITEM_ACCESSIBLE, NULL);
- else
- object = g_object_new (GTK_TYPE_RADIO_MENU_ITEM_ACCESSIBLE, NULL);
-
- accessible = ATK_OBJECT (object);
- atk_object_initialize (accessible, widget);
-
- return accessible;
-}
-
static void
gtk_radio_menu_item_class_init (GtkRadioMenuItemClass *klass)
{
@@ -427,7 +409,8 @@ gtk_radio_menu_item_class_init (GtkRadioMenuItemClass *klass)
gobject_class->get_property = gtk_radio_menu_item_get_property;
widget_class->destroy = gtk_radio_menu_item_destroy;
- widget_class->get_accessible = gtk_radio_menu_item_get_accessible;
+
+ gtk_widget_class_set_accessible_type (widget_class, GTK_TYPE_RADIO_SUBMENU_ITEM_ACCESSIBLE);
menu_item_class->activate = gtk_radio_menu_item_activate;