diff options
author | okan <okan> | 2012-09-10 13:28:04 +0000 |
---|---|---|
committer | okan <okan> | 2012-09-10 13:28:04 +0000 |
commit | 637edf38d51024ba88184b1457640f8fa459e693 (patch) | |
tree | bdca1d8673f531bf423c62838bdaed40018dcb6d | |
parent | 3a45879d76f1fb222417a83d312fba42ae2eadf6 (diff) | |
download | cwm-637edf38d51024ba88184b1457640f8fa459e693.tar.gz cwm-637edf38d51024ba88184b1457640f8fa459e693.tar.xz cwm-637edf38d51024ba88184b1457640f8fa459e693.zip |
be explicit in which key masks we allow during keypress and buttonpress
events; from Alexander Polakov - makes non-us layout reliable.
-rw-r--r-- | xevents.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/xevents.c b/xevents.c index eddf4fe..a155614 100644 --- a/xevents.c +++ b/xevents.c @@ -240,8 +240,8 @@ xev_handle_buttonpress(XEvent *ee) sc = screen_fromroot(e->root); cc = client_find(e->window); - /* Ignore caps lock and numlock */ - e->state &= ~(Mod2Mask | LockMask); + /* only allow the ones we care about */ + e->state &= (ControlMask | Mod1Mask | Mod4Mask | ShiftMask); TAILQ_FOREACH(mb, &Conf.mousebindingq, entry) { if (e->button == mb->button && e->state == mb->modmask) @@ -282,8 +282,8 @@ xev_handle_keypress(XEvent *ee) keysym = XkbKeycodeToKeysym(X_Dpy, e->keycode, 0, 0); skeysym = XkbKeycodeToKeysym(X_Dpy, e->keycode, 0, 1); - /* we don't care about caps lock and numlock here */ - e->state &= ~(LockMask | Mod2Mask); + /* only allow the ones we care about */ + e->state &= (ControlMask | Mod1Mask | Mod4Mask | ShiftMask); TAILQ_FOREACH(kb, &Conf.keybindingq, entry) { if (keysym != kb->keysym && skeysym == kb->keysym) |