microsoft / wslg

Enabling the Windows Subsystem for Linux to include support for Wayland and X server related scenarios
MIT License
10.17k stars 304 forks source link

Phantom key press in X subsystem #635

Open s5y3XZpGvQPApqR opened 2 years ago

s5y3XZpGvQPApqR commented 2 years ago

Version

Microsoft Windows [Version 10.0.22000.376]

WSL Version

Kernel Version

5.10.60.1

Distro Version

Debian GNU/Linux 10 \n \l

Other Software

apt search xev

x11-utils/oldstable,now 7.7+4 amd64 [installed,automatic] X11 utilities

Repro Steps

From command prompt ~$ xev

https://www.commandlinux.com/man-page/man1/xev.1.html

Expected Behavior

xev is reporting that the keypress and release 'q' is being received when no key is pressed. The multiple and repeated 'q' keypress events should not be happening unless a q is pressed.

Actual Behavior

Until the xev window that appears is selected xev reports receiving key press and key release 'q' events indefinitely.

Outer window is 0x400001, inner window is 0x400002

PropertyNotify event, serial 8, synthetic NO, window 0x400001, atom 0x27 (WM_NAME), time 9474100, state PropertyNewValue

PropertyNotify event, serial 9, synthetic NO, window 0x400001, atom 0x22 (WM_COMMAND), time 9474100, state PropertyNewValue

PropertyNotify event, serial 10, synthetic NO, window 0x400001, atom 0x28 (WM_NORMAL_HINTS), time 9474100, state PropertyNewValue

CreateNotify event, serial 11, synthetic NO, window 0x400001, parent 0x400001, window 0x400002, (10,10), width 50, height 50 border_width 4, override NO

PropertyNotify event, serial 14, synthetic NO, window 0x400001, atom 0xf3 (WM_PROTOCOLS), time 9474100, state PropertyNewValue

MapNotify event, serial 15, synthetic NO, window 0x400001, event 0x400001, window 0x400002, override NO

ReparentNotify event, serial 22, synthetic NO, window 0x400001, event 0x400001, window 0x400001, parent 0x200037, (38,59), override NO

ConfigureNotify event, serial 22, synthetic NO, window 0x400001, event 0x400001, window 0x400001, (38,59), width 178, height 178, border_width 0, above 0x0, override NO

PropertyNotify event, serial 22, synthetic NO, window 0x400001, atom 0xf6 (WM_STATE), time 9474100, state PropertyNewValue

PropertyNotify event, serial 22, synthetic NO, window 0x400001, atom 0xfd (_NET_WM_STATE), time 9474100, state PropertyNewValue

PropertyNotify event, serial 22, synthetic NO, window 0x400001, atom 0x103 (_NET_WM_DESKTOP), time 9474100, state PropertyNewValue

MapNotify event, serial 22, synthetic NO, window 0x400001, event 0x400001, window 0x400001, override NO

VisibilityNotify event, serial 22, synthetic NO, window 0x400001, state VisibilityUnobscured

Expose event, serial 22, synthetic NO, window 0x400001, (0,0), width 178, height 10, count 3

Expose event, serial 22, synthetic NO, window 0x400001, (0,10), width 10, height 58, count 2

Expose event, serial 22, synthetic NO, window 0x400001, (68,10), width 110, height 58, count 1

Expose event, serial 22, synthetic NO, window 0x400001, (0,68), width 178, height 110, count 0

FocusIn event, serial 31, synthetic NO, window 0x400001, mode NotifyNormal, detail NotifyNonlinear

KeymapNotify event, serial 31, synthetic NO, window 0x0, keys: 68 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

ConfigureNotify event, serial 31, synthetic YES, window 0x400001, event 0x400001, window 0x400001, (3827,736), width 178, height 178, border_width 0, above 0x0, override NO

EnterNotify event, serial 31, synthetic NO, window 0x400001, root 0x248, subw 0x0, time 9474133, (134,70), root:(3961,806), mode NotifyNormal, detail NotifyAncestor, same_screen YES, focus YES, state 16

KeymapNotify event, serial 31, synthetic NO, window 0x0, keys: 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

MotionNotify event, serial 31, synthetic NO, window 0x400001, root 0x248, subw 0x0, time 9474133, (134,70), root:(3961,806), state 0x10, is_hint 0, same_screen YES

MotionNotify event, serial 31, synthetic NO, window 0x400001, root 0x248, subw 0x0, time 9474133, (134,70), root:(3961,806), state 0x10, is_hint 0, same_screen YES

KeyRelease event, serial 31, synthetic NO, window 0x400001, root 0x248, subw 0x0, time 9474505, (134,70), root:(3961,806), state 0x10, keycode 24 (keysym 0x71, q), same_screen YES, XLookupString gives 1 bytes: (71) "q" XFilterEvent returns: False

KeyPress event, serial 31, synthetic NO, window 0x400001, root 0x248, subw 0x0, time 9474505, (134,70), root:(3961,806), state 0x10, keycode 24 (keysym 0x71, q), same_screen YES, XLookupString gives 1 bytes: (71) "q" XmbLookupString gives 1 bytes: (71) "q" XFilterEvent returns: False

KeyRelease event, serial 34, synthetic NO, window 0x400001, root 0x248, subw 0x0, time 9474530, (134,70), root:(3961,806), state 0x10, keycode 24 (keysym 0x71, q), same_screen YES, XLookupString gives 1 bytes: (71) "q" XFilterEvent returns: False

KeyPress event, serial 34, synthetic NO, window 0x400001, root 0x248, subw 0x0, time 9474530, (134,70), root:(3961,806), state 0x10, keycode 24 (keysym 0x71, q), same_screen YES, XLookupString gives 1 bytes: (71) "q" XmbLookupString gives 1 bytes: (71) "q" XFilterEvent returns: False

KeyRelease event, serial 34, synthetic NO, window 0x400001, root 0x248, subw 0x0, time 9474555, (134,70), root:(3961,806), state 0x10, keycode 24 (keysym 0x71, q), same_screen YES, XLookupString gives 1 bytes: (71) "q" XFilterEvent returns: False

KeyPress event, serial 34, synthetic NO, window 0x400001, root 0x248, subw 0x0, time 9474555, (134,70), root:(3961,806), state 0x10, keycode 24 (keysym 0x71, q), same_screen YES, XLookupString gives 1 bytes: (71) "q" XmbLookupString gives 1 bytes: (71) "q" XFilterEvent returns: False

KeyRelease event, serial 34, synthetic NO, window 0x400001, root 0x248, subw 0x0, time 9474580, (134,70), root:(3961,806), state 0x10, keycode 24 (keysym 0x71, q), same_screen YES, XLookupString gives 1 bytes: (71) "q" XFilterEvent returns: False

... continues forever

Diagnostic Logs

No response

GamerSenior commented 2 years ago

Related issue? https://github.com/microsoft/wslg/issues/58