[PATCH 1/2] winex11.drv: Ctrl-Space should generate VK_SPACE, not 0x00

Hugh McMaster hugh.mcmaster at outlook.com
Tue Dec 1 04:38:00 CST 2015


Fixes bug 15083 - https://bugs.winehq.org/show_bug.cgi?id=15083

Signed-off-by: Hugh McMaster <hugh.mcmaster at outlook.com>
---
 dlls/winex11.drv/keyboard.c | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/dlls/winex11.drv/keyboard.c b/dlls/winex11.drv/keyboard.c
index 3d68d66..46a6342 100644
--- a/dlls/winex11.drv/keyboard.c
+++ b/dlls/winex11.drv/keyboard.c
@@ -2566,6 +2566,14 @@ INT CDECL X11DRV_ToUnicodeEx(UINT virtKey, UINT scanCode, const BYTE *lpKeyState
             e.keycode = XKeysymToKeycode(e.display, XK_KP_Decimal);
     }
 
+    /* Ctrl-Space generates VK_SPACE on Windows, not 0x00 */
+    if (e.state == ControlMask && virtKey == VK_SPACE)
+    {
+        bufW[0] = VK_SPACE;
+        ret = 1;
+        goto found;
+    }
+
     if (!e.keycode && virtKey != VK_NONAME)
       {
 	WARN_(key)("Unknown virtual key %X !!!\n", virtKey);
-- 
1.9.1




More information about the wine-patches mailing list