]> Pileus Git - ~andy/gtk/commitdiff
gtk: enable setting virtual modifiers in GtkCellRendererAccel
authorMichael Natterer <mitch@lanedo.com>
Fri, 16 Sep 2011 13:39:23 +0000 (15:39 +0200)
committerMichael Natterer <mitch@gimp.org>
Mon, 26 Sep 2011 14:01:50 +0000 (16:01 +0200)
Call gdk_keymap_add_virtual_modifiers() on event->state,
so virtual modifiers get added at all.
(cherry picked from commit be1eea612cb7beacffdc0b31e7158195004f5e2d)

gtk/gtkcellrendereraccel.c

index 174f44cebac2ab47a2ba72de379e9751ce6bd342..08c61d7c27cf88d87a522f20bacb9e6ce3069c66 100644 (file)
@@ -471,11 +471,14 @@ grab_key_callback (GtkWidget            *widget,
                                        event->group,
                                        NULL, NULL, NULL, &consumed_modifiers);
 
+  accel_mods = event->state;
+  gdk_keymap_add_virtual_modifiers (gdk_keymap_get_for_display (display), &accel_mods);
+
   accel_key = gdk_keyval_to_lower (event->keyval);
   if (accel_key == GDK_KEY_ISO_Left_Tab) 
     accel_key = GDK_KEY_Tab;
 
-  accel_mods = event->state & gtk_accelerator_get_default_mod_mask ();
+  accel_mods &= gtk_accelerator_get_default_mod_mask ();
 
   /* Filter consumed modifiers 
    */