summaryrefslogtreecommitdiff
path: root/openbox/prompt.c
diff options
context:
space:
mode:
Diffstat (limited to 'openbox/prompt.c')
-rw-r--r--openbox/prompt.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/openbox/prompt.c b/openbox/prompt.c
index 4f8930d7..73536152 100644
--- a/openbox/prompt.c
+++ b/openbox/prompt.c
@@ -520,15 +520,16 @@ void prompt_hide(ObPrompt *self)
gboolean prompt_key_event(ObPrompt *self, XEvent *e)
{
gboolean shift;
- guint shift_mask;
+ guint shift_mask, mods;
if (e->type != KeyPress) return FALSE;
shift_mask = obt_keyboard_modkey_to_modmask(OBT_KEYBOARD_MODKEY_SHIFT);
- shift = !!(e->xkey.state & shift_mask);
+ mods = obt_keyboard_only_modmasks(e->xkey.state);
+ shift = !!(mods & shift_mask);
/* only accept shift */
- if (e->xkey.state != 0 && e->xkey.state != shift_mask)
+ if (mods != 0 && mods != shift_mask)
return FALSE;
if (ob_keycode_match(e->xkey.keycode, OB_KEY_ESCAPE))