Vitaliy Margolen : dinput: Explicitly set extended key flag for Right Shift .
Alexandre Julliard
julliard at winehq.org
Mon Apr 28 08:01:02 CDT 2008
Module: wine
Branch: master
Commit: 4a2f7497ab496acb1e735e8b2426787719eef3a4
URL: http://source.winehq.org/git/wine.git/?a=commit;h=4a2f7497ab496acb1e735e8b2426787719eef3a4
Author: Vitaliy Margolen <wine-patches at kievinfo.com>
Date: Sat Apr 26 17:35:43 2008 -0600
dinput: Explicitly set extended key flag for Right Shift.
---
dlls/dinput/keyboard.c | 4 +++-
1 files changed, 3 insertions(+), 1 deletions(-)
diff --git a/dlls/dinput/keyboard.c b/dlls/dinput/keyboard.c
index 87837ff..84d9f60 100644
--- a/dlls/dinput/keyboard.c
+++ b/dlls/dinput/keyboard.c
@@ -64,7 +64,9 @@ static void KeyboardCallback( LPDIRECTINPUTDEVICE8A iface, WPARAM wparam, LPARAM
TRACE("(%p) %ld,%ld\n", iface, wparam, lparam);
dik_code = hook->scanCode & 0xff;
- if (hook->flags & LLKHF_EXTENDED) dik_code |= 0x80;
+ /* R-Shift is special - it is an extended key with separate scan code */
+ if (hook->flags & LLKHF_EXTENDED && dik_code != 0x36)
+ dik_code |= 0x80;
new_diks = hook->flags & LLKHF_UP ? 0 : 0x80;
More information about the wine-cvs
mailing list