Module: wine Branch: master Commit: 14d97c261b5172f84d9d8a935f7f72b8a83bf7e6 URL: https://source.winehq.org/git/wine.git/?a=commit;h=14d97c261b5172f84d9d8a935...
Author: Jacek Caban jacek@codeweavers.com Date: Fri Sep 25 16:25:45 2020 +0200
user32: Support control characters in null driver VkKeyScanEx implementation.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=49894 Signed-off-by: Jacek Caban jacek@codeweavers.com Signed-off-by: Alexandre Julliard julliard@winehq.org
---
dlls/user32/driver.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-)
diff --git a/dlls/user32/driver.c b/dlls/user32/driver.c index 8ff6b0a817..7ac7714169 100644 --- a/dlls/user32/driver.c +++ b/dlls/user32/driver.c @@ -300,7 +300,14 @@ static void CDECL nulldrv_UnregisterHotKey( HWND hwnd, UINT modifiers, UINT vk )
static SHORT CDECL nulldrv_VkKeyScanEx( WCHAR ch, HKL layout ) { - return -1; + static const short ctrl_vks[] = { + 0x332, 0x241, 0x242, 0x003, 0x244, 0x245, 0x246, 0x247, + 0x008, 0x009, 0x20d, 0x24b, 0x24c, 0x00d, 0x24e, 0x24f, + 0x250, 0x251, 0x252, 0x253, 0x254, 0x255, 0x256, 0x257, + 0x258, 0x259, 0x25a, 0x01b, 0x2dc, 0x2dd, 0x336, 0x3bd + }; + + return ch < ARRAY_SIZE(ctrl_vks) ? ctrl_vks[ch] : -1; }
static void CDECL nulldrv_DestroyCursorIcon( HCURSOR cursor )