[NtUser]
authorJames Tabor <james.tabor@reactos.org>
Fri, 12 Aug 2016 00:54:44 +0000 (00:54 +0000)
committerJames Tabor <james.tabor@reactos.org>
Fri, 12 Aug 2016 00:54:44 +0000 (00:54 +0000)
- Get the right shift to pass through the keyboard subsystem. (WIP)

svn path=/trunk/; revision=72204

reactos/win32ss/user/ntuser/keyboard.c

index 18c550a..d2cba89 100644 (file)
@@ -1090,8 +1090,17 @@ UserProcessKeyboardInput(
         KbdInput.dwFlags = 0;
         if (pKbdInputData->Flags & KEY_BREAK)
             KbdInput.dwFlags |= KEYEVENTF_KEYUP;
+
         if (wVk & KBDEXT)
             KbdInput.dwFlags |= KEYEVENTF_EXTENDEDKEY;
+        //
+        // Based on wine input:test_Input_blackbox this is okay. It seems the 
+        // bit did not get set and more research is needed. Now the right
+        // shift works.
+        //
+        if (wVk == VK_RSHIFT)
+            KbdInput.dwFlags |= KEYEVENTF_EXTENDEDKEY;
+
         KbdInput.time = 0;
         KbdInput.dwExtraInfo = pKbdInputData->ExtraInformation;
         UserSendKeyboardInput(&KbdInput, FALSE);