Author: zguo
Date: Fri Oct 24 21:27:13 2014
New Revision: 64973
URL:
http://svn.reactos.org/svn/reactos?rev=64973&view=rev
Log:
[WIN32K]
Incorporate fix for keyboard indicator lights.
CORE-8547
Modified:
branches/0.3.17/reactos/ (props changed)
branches/0.3.17/reactos/drivers/input/i8042prt/keyboard.c
branches/0.3.17/reactos/win32ss/user/ntuser/keyboard.c
Propchange: branches/0.3.17/reactos/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Fri Oct 24 21:27:13 2014
@@ -18,4 +18,4 @@
/branches/usb-bringup:51335,51337,51341-51343,51348,51350,51353,51355,51365-51369,51372,51384-54388,54396-54398,54736-54737,54752-54754,54756-54760,54762,54764-54765,54767-54768,54772,54774-54777,54781,54787,54790-54792,54797-54798,54806,54808,54834-54838,54843,54850,54852,54856,54858-54859
/branches/usb-bringup-trunk:55019-55543,55548-55554,55556-55567
/branches/wlan-bringup:54809-54998
-/trunk/reactos:64752-64754,64765,64769,64771,64776,64793,64800,64825,64829,64832-64833,64859,64909
+/trunk/reactos:64752-64754,64765,64769,64771,64776,64793,64800,64825,64829,64832-64833,64859,64908-64909
Modified: branches/0.3.17/reactos/drivers/input/i8042prt/keyboard.c
URL:
http://svn.reactos.org/svn/reactos/branches/0.3.17/reactos/drivers/input/i8…
==============================================================================
--- branches/0.3.17/reactos/drivers/input/i8042prt/keyboard.c [iso-8859-1] (original)
+++ branches/0.3.17/reactos/drivers/input/i8042prt/keyboard.c [iso-8859-1] Fri Oct 24
21:27:13 2014
@@ -694,7 +694,7 @@
{
TRACE_(I8042PRT, "IRP_MJ_INTERNAL_DEVICE_CONTROL /
IOCTL_KEYBOARD_QUERY_INDICATORS\n");
- if (Stack->Parameters.DeviceIoControl.InputBufferLength <
sizeof(KEYBOARD_INDICATOR_PARAMETERS))
+ if (Stack->Parameters.DeviceIoControl.OutputBufferLength <
sizeof(KEYBOARD_INDICATOR_PARAMETERS))
{
Status = STATUS_BUFFER_TOO_SMALL;
}
Modified: branches/0.3.17/reactos/win32ss/user/ntuser/keyboard.c
URL:
http://svn.reactos.org/svn/reactos/branches/0.3.17/reactos/win32ss/user/ntu…
==============================================================================
--- branches/0.3.17/reactos/win32ss/user/ntuser/keyboard.c [iso-8859-1] (original)
+++ branches/0.3.17/reactos/win32ss/user/ntuser/keyboard.c [iso-8859-1] Fri Oct 24
21:27:13 2014
@@ -61,7 +61,7 @@
while (pRet)
{
- Status = NtDeviceIoControlFile(hKeyboardDevice,
+ Status = ZwDeviceIoControlFile(hKeyboardDevice,
NULL,
NULL,
NULL,
@@ -104,8 +104,7 @@
NTSTATUS APIENTRY
IntKeyboardUpdateLeds(HANDLE hKeyboardDevice,
WORD wVk,
- WORD wScanCode,
- BOOL bEnabled)
+ WORD wScanCode)
{
NTSTATUS Status;
UINT i;
@@ -133,13 +132,10 @@
if (LedFlag)
{
- if (bEnabled)
- gIndicators.LedFlags |= LedFlag;
- else
- gIndicators.LedFlags = ~LedFlag;
+ gIndicators.LedFlags ^= LedFlag;
/* Update the lights on the hardware */
- Status = NtDeviceIoControlFile(hKeyboardDevice,
+ Status = ZwDeviceIoControlFile(hKeyboardDevice,
NULL,
NULL,
NULL,
@@ -164,10 +160,10 @@
{
NTSTATUS Status;
IO_STATUS_BLOCK Block;
-/*
+
IntKeyboardGetIndicatorTrans(hKeyboardDevice, &gpKeyboardIndicatorTrans);
- Status = NtDeviceIoControlFile(hKeyboardDevice,
+ Status = ZwDeviceIoControlFile(hKeyboardDevice,
NULL,
NULL,
NULL,
@@ -186,9 +182,9 @@
gIndicators.LedFlags & KEYBOARD_NUM_LOCK_ON);
SET_KEY_LOCKED(gafAsyncKeyState, VK_SCROLL,
gIndicators.LedFlags & KEYBOARD_SCROLL_LOCK_ON);
-*/
+
// FIXME: Need device driver to work! HID support more than one!!!!
- Status = NtDeviceIoControlFile(hKeyboardDevice,
+ Status = ZwDeviceIoControlFile(hKeyboardDevice,
NULL,
NULL,
NULL,
@@ -808,8 +804,7 @@
/* Update keyboard LEDs */
IntKeyboardUpdateLeds(ghKeyboardDevice,
wSimpleVk,
- wScanCode,
- IS_KEY_LOCKED(gafAsyncKeyState, wSimpleVk));
+ wScanCode);
}
/* Call WH_KEYBOARD_LL hook */