diff options
author | Matthias Clasen <mclasen@redhat.com> | 2020-03-24 12:45:12 -0400 |
---|---|---|
committer | Matthias Clasen <mclasen@redhat.com> | 2020-03-25 23:14:45 -0400 |
commit | 591f6bd7a97d179fefd255456f5dc90d417a0c06 (patch) | |
tree | b39952147ef893c1db9b84fd9d1f08104c3f830b /gtk/gtkpopovermenu.c | |
parent | 642503afb4e9ad726237fb2241c8df3288a2da8e (diff) | |
download | gtk+-591f6bd7a97d179fefd255456f5dc90d417a0c06.tar.gz |
popovermenu: Show mnemonics on keynav
This is the expected behavior for menus.
Diffstat (limited to 'gtk/gtkpopovermenu.c')
-rw-r--r-- | gtk/gtkpopovermenu.c | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/gtk/gtkpopovermenu.c b/gtk/gtkpopovermenu.c index 23375dd0c1..39c159ad45 100644 --- a/gtk/gtkpopovermenu.c +++ b/gtk/gtkpopovermenu.c @@ -230,6 +230,8 @@ gtk_popover_menu_init (GtkPopoverMenu *popover) gtk_shortcut_controller_set_mnemonics_modifiers (GTK_SHORTCUT_CONTROLLER (controller), 0); } g_list_free (controllers); + + gtk_popover_disable_auto_mnemonics (GTK_POPOVER (popover)); } static void @@ -416,6 +418,15 @@ gtk_popover_menu_show (GtkWidget *widget) } static void +gtk_popover_menu_move_focus (GtkWidget *widget, + GtkDirectionType direction) +{ + gtk_popover_set_mnemonics_visible (GTK_POPOVER (widget), TRUE); + + GTK_WIDGET_CLASS (gtk_popover_menu_parent_class)->move_focus (widget, direction); +} + +static void gtk_popover_menu_class_init (GtkPopoverMenuClass *klass) { GtkWidgetClass *widget_class = GTK_WIDGET_CLASS (klass); @@ -429,6 +440,7 @@ gtk_popover_menu_class_init (GtkPopoverMenuClass *klass) widget_class->unmap = gtk_popover_menu_unmap; widget_class->focus = gtk_popover_menu_focus; widget_class->show = gtk_popover_menu_show; + widget_class->move_focus = gtk_popover_menu_move_focus; g_object_class_install_property (object_class, PROP_VISIBLE_SUBMENU, |