diff options
author | tomKPZ <tomKPZ@gmail.com> | 2021-04-19 23:10:37 -0700 |
---|---|---|
committer | Simon Ser <contact@emersion.fr> | 2021-04-20 08:19:48 +0200 |
commit | 7c9b61b18c3041f3ccc883d7814175d9983dc74e (patch) | |
tree | f35096ea584b99afa36c3a37d87dd11bd4023071 /backend | |
parent | e8df7c367acad38ae7fd3ffcb7cbce1b6b3a3153 (diff) |
Fix stuck keys on X11 backend
Diffstat (limited to 'backend')
-rw-r--r-- | backend/x11/input_device.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/backend/x11/input_device.c b/backend/x11/input_device.c index a085b046..f4911777 100644 --- a/backend/x11/input_device.c +++ b/backend/x11/input_device.c @@ -123,6 +123,10 @@ void handle_x11_xinput_event(struct wlr_x11_backend *x11, xcb_input_key_press_event_t *ev = (xcb_input_key_press_event_t *)event; + if (ev->flags & XCB_INPUT_KEY_EVENT_FLAGS_KEY_REPEAT) { + return; + } + wlr_keyboard_notify_modifiers(&x11->keyboard, ev->mods.base, ev->mods.latched, ev->mods.locked, ev->mods.effective); send_key_event(x11, ev->detail - 8, WL_KEYBOARD_KEY_STATE_PRESSED, ev->time); |