From 17b8d9836dfdae87c25a0f996f0424cd0d661956 Mon Sep 17 00:00:00 2001 From: Paul Davis Date: Thu, 29 Jan 2015 12:15:36 -0500 Subject: [PATCH] don't wipe out SHIFT from event state when processing keyboard events, as done in a recent commit --- gtk2_ardour/utils.cc | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/gtk2_ardour/utils.cc b/gtk2_ardour/utils.cc index e16864328c..e790595106 100644 --- a/gtk2_ardour/utils.cc +++ b/gtk2_ardour/utils.cc @@ -529,7 +529,8 @@ ARDOUR_UI_UTILS::key_press_focus_accelerator_handler (Gtk::Window& window, GdkEv if (allow_activating) { DEBUG_TRACE (DEBUG::Accelerators, "\tsending to window\n"); - if (gtk_accel_groups_activate (G_OBJECT(win), ev->keyval, GdkModifierType (ev->state & mask))) { + if (gtk_accel_groups_activate (G_OBJECT(win), ev->keyval, + (GdkModifierType) (ev->state & gtk_accelerator_get_default_mod_mask()))) { DEBUG_TRACE (DEBUG::Accelerators, "\t\thandled\n"); return true; } @@ -549,7 +550,8 @@ ARDOUR_UI_UTILS::key_press_focus_accelerator_handler (Gtk::Window& window, GdkEv if (!gtk_window_propagate_key_event (win, ev)) { DEBUG_TRACE (DEBUG::Accelerators, "\tpropagation didn't handle, so activate\n"); if (allow_activating) { - return gtk_accel_groups_activate (G_OBJECT(win), ev->keyval, GdkModifierType (ev->state & mask)); + return gtk_accel_groups_activate (G_OBJECT(win), ev->keyval, + (GdkModifierType) (ev->state & gtk_accelerator_get_default_mod_mask())); } else { DEBUG_TRACE (DEBUG::Accelerators, "\tactivation skipped\n"); }