Blob Blame History Raw
commit 7324dea66d754ff863fea3362c90acc9689670c6
Author: Harald Judt <h.judt@gmx.at>
Date:   Fri May 4 22:15:16 2012 +0200

    Enable <Shift> as modifier key in shortcut dialog.
    
    This restores the functionality of <Shift> as a modifier key.
    Using <Shift_L> and <Shift_R> as a single key is still possible.
    
    It seems gtk_accelerator_name is not designed to distinguish between
    upper-/lowercase, so we just store the <Shift> key in the accelerator
    name. This might not be the recommended way to store accelerators
    as specified by the GTK docs, but at least it fixes the regression
    and seems to not cause any troubles.

diff --git a/libxfce4kbd-private/xfce-shortcut-dialog.c b/libxfce4kbd-private/xfce-shortcut-dialog.c
index 5f1b058..b1ce159 100644
--- a/libxfce4kbd-private/xfce-shortcut-dialog.c
+++ b/libxfce4kbd-private/xfce-shortcut-dialog.c
@@ -327,6 +327,8 @@ xfce_shortcut_dialog_key_pressed (XfceShortcutDialog *dialog,
                                        &keyval, NULL, NULL, &consumed);
 
   /* Get the modifiers */
+  if ((modifiers & GDK_SHIFT_MASK) && (consumed & GDK_SHIFT_MASK))
+    consumed &= ~GDK_SHIFT_MASK;
   modifiers &= ~consumed;
   modifiers &= mod_mask;