From 18f6d8c47cf47e9d0197ef24fe8221d506ea4566 Mon Sep 17 00:00:00 2001 From: okan Date: Mon, 10 Sep 2012 13:28:04 +0000 Subject: be explicit in which key masks we allow during keypress and buttonpress events; from Alexander Polakov - makes non-us layout reliable. --- xevents.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) (limited to 'xevents.c') diff --git a/xevents.c b/xevents.c index 6d98e71..b20adbc 100644 --- a/xevents.c +++ b/xevents.c @@ -15,7 +15,7 @@ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * - * $OpenBSD: xevents.c,v 1.65 2012/07/13 17:01:04 okan Exp $ + * $OpenBSD: xevents.c,v 1.66 2012/09/10 13:28:04 okan Exp $ */ /* @@ -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) -- cgit v1.2.3-2-gb3c3