Skip to content

Commit e6ad0fb

Browse files
mahkohmaroider
authored andcommitted
X11: Only fetch virtual keyboard events from master devices
We must not report virtual keyboard events for keys that were grabbed by other applications (XGrabKey, etc.). Since grabs only affect master devices, we must consume virtual events from master devices only.
1 parent fd06cbd commit e6ad0fb

File tree

2 files changed

+3
-5
lines changed

2 files changed

+3
-5
lines changed

src/platform_impl/linux/x11/mod.rs

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -630,9 +630,7 @@ impl Device {
630630
| ffi::XI_RawButtonPressMask
631631
| ffi::XI_RawButtonReleaseMask
632632
| ffi::XI_RawKeyPressMask
633-
| ffi::XI_RawKeyReleaseMask
634-
| ffi::XI_KeyPressMask
635-
| ffi::XI_KeyReleaseMask;
633+
| ffi::XI_RawKeyReleaseMask;
636634
// The request buffer is flushed when we poll for events
637635
wt.xconn
638636
.select_xinput_events(wt.root, info.deviceid, mask)

src/platform_impl/linux/x11/window.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -434,8 +434,8 @@ impl UnownedWindow {
434434
let mask = ffi::XI_MotionMask
435435
| ffi::XI_ButtonPressMask
436436
| ffi::XI_ButtonReleaseMask
437-
//| ffi::XI_KeyPressMask
438-
//| ffi::XI_KeyReleaseMask
437+
| ffi::XI_KeyPressMask
438+
| ffi::XI_KeyReleaseMask
439439
| ffi::XI_EnterMask
440440
| ffi::XI_LeaveMask
441441
| ffi::XI_FocusInMask

0 commit comments

Comments
 (0)