be explicit in which key masks we allow during keypress and buttonpress

events; from Alexander Polakov - makes non-us layout reliable.
This commit is contained in:
okan 2012-09-10 13:28:04 +00:00
parent 98b69076ac
commit 2a98b1a00b

View File

@ -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)