[Bug 45605] Letter keys doesn't work in DirectX aplications

wine-bugs at winehq.org wine-bugs at winehq.org
Mon Nov 26 13:12:24 CST 2018


https://bugs.winehq.org/show_bug.cgi?id=45605

--- Comment #5 from supercoolemail at seznam.cz ---
Created attachment 62868
  --> https://bugs.winehq.org/attachment.cgi?id=62868
Key log

log with WINEDEBUG=+key

This is possibly caused by something deeper than dinput. I've trace it here
https://github.com/wine-mirror/wine/blob/master/dlls/user32/message.c#L2881
>From there I went to +key and it floods logs with

0027:trace:key:X11DRV_KEYBOARD_DetectLayout mismatch for keycode 10, got
L"+1!~"
0027:trace:key:X11DRV_KEYBOARD_DetectLayout mismatch for keycode 11, got
L"\011b2@\02c7"
0027:trace:key:X11DRV_KEYBOARD_DetectLayout mismatch for keycode 12, got
L"\01613#^"
0027:trace:key:X11DRV_KEYBOARD_DetectLayout mismatch for keycode 13, got
L"\010d4$\02d8"
0027:trace:key:X11DRV_KEYBOARD_DetectLayout mismatch for keycode 14, got
L"\01595%\00b0"
0027:trace:key:X11DRV_KEYBOARD_DetectLayout mismatch for keycode 15, got
L"\017e6^\02db"
0027:trace:key:X11DRV_KEYBOARD_DetectLayout mismatch for keycode 16, got
L"\00fd7&`"
0027:trace:key:X11DRV_KEYBOARD_DetectLayout mismatch for keycode 17, got
L"\00e18*\02d9"
...and many more ofthese just with different codes

Later it logs
0009:trace:key:X11DRV_KeyEvent KeyPress : keysym=2b (plus), # of chars=1 / "+"
0009:trace:key:EVENT_event_to_vkey e->keycode = 10
0009:trace:key:X11DRV_KeyEvent keycode 10 converted to vkey 0x31 scan 02
0009:trace:key:X11DRV_send_keyboard_input hwnd 0x10058 vkey=0090 scan=0045
flags=0001
0009:trace:key:X11DRV_send_keyboard_input hwnd 0x10058 vkey=0090 scan=0045
flags=0003
0009:trace:key:X11DRV_send_keyboard_input hwnd 0x10058 vkey=0031 scan=0002
flags=0000
0009:trace:key:X11DRV_KeyEvent type 3, window 8000001, state 0x0010, keycode 10
0009:trace:key:X11DRV_KeyEvent nbyte = 1, status 0
0009:trace:key:X11DRV_KeyEvent KeyRelease : keysym=2b (plus), # of chars=1 /
"+"
0009:trace:key:EVENT_event_to_vkey e->keycode = 10
0009:trace:key:X11DRV_KeyEvent keycode 10 converted to vkey 0x31 scan 02
0009:trace:key:X11DRV_send_keyboard_input hwnd 0x10058 vkey=0031 scan=0002
flags=0002
0009:trace:key:X11DRV_KeyEvent type 2, window 8000001, state 0x0010, keycode 11
0009:trace:key:X11DRV_KeyEvent XmbLookupString needs 2 byte(s)
0009:trace:key:X11DRV_KeyEvent nbyte = 2, status 4
0009:trace:key:X11DRV_KeyEvent KeyPress : keysym=1ec (ecaron), # of chars=2 /
"\xc4\x9b"
0009:trace:key:EVENT_event_to_vkey e->keycode = 11
0009:trace:key:X11DRV_KeyEvent keycode 11 converted to vkey 0x32 scan 03
0009:trace:key:X11DRV_send_keyboard_input hwnd 0x10058 vkey=0032 scan=0003
flags=0000
0009:trace:key:X11DRV_KeyEvent type 3, window 8000001, state 0x0010, keycode 11
0009:trace:key:X11DRV_KeyEvent nbyte = 2, status 0
0009:trace:key:X11DRV_KeyEvent KeyRelease : keysym=1ec (ecaron), # of chars=2 /
"\xc4\x9b"
0009:trace:key:EVENT_event_to_vkey e->keycode = 11
0009:trace:key:X11DRV_KeyEvent keycode 11 converted to vkey 0x32 scan 03

So 1 is translated to +, but later keys (2 to 0) are translated to locale
dependent codes.

-- 
Do not reply to this email, post in Bugzilla using the
above URL to reply.
You are receiving this mail because:
You are watching all bug changes.



More information about the wine-bugs mailing list