Author: jimtabor Date: Fri Aug 12 00:54:44 2016 New Revision: 72204 URL: http://svn.reactos.org/svn/reactos?rev=72204&view=rev Log: [NtUser] - Get the right shift to pass through the keyboard subsystem. (WIP)
Modified: trunk/reactos/win32ss/user/ntuser/keyboard.c Modified: trunk/reactos/win32ss/user/ntuser/keyboard.c URL: http://svn.reactos.org/svn/reactos/trunk/reactos/win32ss/user/ntuser/keyboard.c?rev=72204&r1=72203&r2=72204&view=diff ============================================================================== --- trunk/reactos/win32ss/user/ntuser/keyboard.c [iso-8859-1] (original) +++ trunk/reactos/win32ss/user/ntuser/keyboard.c [iso-8859-1] Fri Aug 12 00:54:44 2016 @@ -1090,8 +1090,17 @@ 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);