Vitaliy Margolen : dinput: Explicitly set extended key flag for Right Shift .
Module: wine Branch: master Commit: 4a2f7497ab496acb1e735e8b2426787719eef3a4 URL: http://source.winehq.org/git/wine.git/?a=commit;h=4a2f7497ab496acb1e735e8b24... Author: Vitaliy Margolen <wine-patches(a)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;
participants (1)
-
Alexandre Julliard