]> Pileus Git - ~andy/gtk/commitdiff
Make menu scrolling work with auto mnemonics
authorMatthias Clasen <mclasen@redhat.com>
Thu, 18 Mar 2010 01:17:38 +0000 (21:17 -0400)
committerTristan Van Berkom <tristan.van.berkom@gmail.com>
Sun, 4 Apr 2010 00:59:16 +0000 (20:59 -0400)
The menu scrolling code is not robust against menu repositioning so
we have avoid causing unnecessary recalculations of labels in parent
menuitems.

gtk/gtkmenushell.c

index 710f835be8cca2b2e6c2c00016fc06dcfb3dc3a7..c3e107fa1cfb9457f29cf35d1ab33e07240fbc01 100644 (file)
@@ -1168,7 +1168,11 @@ gtk_menu_shell_real_select_item (GtkMenuShell *menu_shell,
 {
   GtkPackDirection pack_dir = PACK_DIRECTION (menu_shell);
 
-  gtk_menu_shell_deselect (menu_shell);
+  if (menu_shell->active_menu_item)
+    {
+      gtk_menu_item_deselect (GTK_MENU_ITEM (menu_shell->active_menu_item));
+      menu_shell->active_menu_item = NULL;
+    }
 
   if (!_gtk_menu_item_is_selectable (menu_item))
     {