summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--plugins/gtkui/callbacks.c3
-rw-r--r--plugins/gtkui/hotkeys.c3
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];