summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorlukefromdc <[email protected]>2018-01-17 16:37:14 -0500
committerlukefromdc <[email protected]>2018-01-21 16:34:55 -0500
commitfd12de42dc5614b94ae330eee307fb32a35bd335 (patch)
tree0b461dcc37b69c148af3b3653ef6dab71bfa29bf
parent3889e1727159429123f872d4f3a2cf8c7ddbb971 (diff)
downloadmate-panel-fd12de42dc5614b94ae330eee307fb32a35bd335.tar.bz2
mate-panel-fd12de42dc5614b94ae330eee307fb32a35bd335.tar.xz
Fix rendering of radio buttons in status notifier
*Ensure only the actually selected radio button is shown as checked, not all the radio buttons *Note that this works so long as each menu created by a single indicator creates no more than one groups of radio buttons, the usual case *Also set ATK_ROLE_RADIO_MENU_ITEM for any radio menu items created by an indicator as this code otherwise would cause Orca to call them check menu items
-rw-r--r--applets/notification_area/status-notifier/sn-dbus-menu-item.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/applets/notification_area/status-notifier/sn-dbus-menu-item.c b/applets/notification_area/status-notifier/sn-dbus-menu-item.c
index 862fd3b0..2fe587cf 100644
--- a/applets/notification_area/status-notifier/sn-dbus-menu-item.c
+++ b/applets/notification_area/status-notifier/sn-dbus-menu-item.c
@@ -180,7 +180,11 @@ sn_dbus_menu_item_new (GVariant *props)
}
else if (g_strcmp0 (item->toggle_type, "radio") == 0)
{
- item->item = gtk_radio_menu_item_new (NULL);
+ item->item = gtk_check_menu_item_new ();
+ gtk_check_menu_item_set_draw_as_radio (GTK_CHECK_MENU_ITEM(item->item),TRUE);
+ AtkObject *atk_obj;
+ atk_obj = gtk_widget_get_accessible (item->item);
+ atk_object_set_role (atk_obj,ATK_ROLE_RADIO_MENU_ITEM);
}
else
{