diff options
-rw-r--r-- | plugins/gtkui/callbacks.c | 3 | ||||
-rw-r--r-- | plugins/gtkui/hotkeys.c | 3 |
2 files changed, 2 insertions, 4 deletions
diff --git a/plugins/gtkui/callbacks.c b/plugins/gtkui/callbacks.c index d341a425..5a696bc9 100644 --- a/plugins/gtkui/callbacks.c +++ b/plugins/gtkui/callbacks.c @@ -193,11 +193,10 @@ on_mainwin_key_press_event (GtkWidget *widget, if (accel_key == GDK_ISO_Left_Tab) accel_key = GDK_Tab; int mods = event->state & gtk_accelerator_get_default_mod_mask (); - mods &= ~consumed; + mods &= ~(consumed&~GDK_SHIFT_MASK); int lower = gdk_keyval_to_lower (accel_key); if (lower != accel_key) { accel_key = lower; - mods |= GDK_SHIFT_MASK; } trace ("pressed: keycode: %x, mods: %x, hw: %x, translated: %x\n", event->keyval, mods, event->hardware_keycode, accel_key); diff --git a/plugins/gtkui/hotkeys.c b/plugins/gtkui/hotkeys.c index f176cf8d..f62aa36e 100644 --- a/plugins/gtkui/hotkeys.c +++ b/plugins/gtkui/hotkeys.c @@ -757,14 +757,13 @@ on_hotkeys_set_key_key_press_event (GtkWidget *widget, /* Filter consumed modifiers */ - accel_mods &= ~consumed_modifiers; + accel_mods &= ~(consumed_modifiers&~GDK_SHIFT_MASK); /* Put shift back if it changed the case of the key, not otherwise. */ int lower = gdk_keyval_to_lower (accel_key); if (lower != accel_key) { accel_key = lower; - accel_mods |= GDK_SHIFT_MASK; } char name[1000]; |