Author: jimtabor
Date: Wed May 4 01:31:47 2011
New Revision: 51571
URL: http://svn.reactos.org/svn/reactos?rev=51571&view=rev
Log:
[Win32k]
- Move up the chain to convert F10 to system key mode before going into the
queue, so when in menu tracking, the message can be removed and processed, see
bug 1009.
Modified:
trunk/reactos/subsystems/win32/win32k/ntuser/input.c
trunk/reactos/subsystems/win32/win32k/ntuser/msgqueue.c
Modified: trunk/reactos/subsystems/win32/win32k/ntuser/input.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/subsystems/win32/win32k/ntuser/input.c?rev=51571&r1=51570&r2=51571&view=diff
==============================================================================
--- trunk/reactos/subsystems/win32/win32k/ntuser/input.c [iso-8859-1] (original)
+++ trunk/reactos/subsystems/win32/win32k/ntuser/input.c [iso-8859-1] Wed May
4 01:31:47 2011
@@ -482,7 +482,7 @@
co_IntKeyboardSendAltKeyMsg()
{
DPRINT1("co_IntKeyboardSendAltKeyMsg\n");
-// co_MsqPostKeyboardMessage(WM_SYSCOMMAND,SC_KEYMENU,0); This sends
everything into a msg loop!
+ //co_MsqPostKeyboardMessage(WM_SYSCOMMAND,SC_KEYMENU,0); // This sends
everything into a msg loop!
}
static VOID APIENTRY
@@ -859,6 +859,11 @@
{
/* There is no focused window to receive a keyboard message */
continue;
+ }
+ if ( msg.wParam == VK_F10 ) // Bypass this key before it is in the
queue.
+ {
+ if (msg.message == WM_KEYUP) msg.message = WM_SYSKEYUP;
+ if (msg.message == WM_KEYDOWN) msg.message = WM_SYSKEYDOWN;
}
/*
* Post a keyboard message.
Modified: trunk/reactos/subsystems/win32/win32k/ntuser/msgqueue.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/subsystems/win32/win32k/ntuser/msgqueue.c?rev=51571&r1=51570&r2=51571&view=diff
==============================================================================
--- trunk/reactos/subsystems/win32/win32k/ntuser/msgqueue.c [iso-8859-1]
(original)
+++ trunk/reactos/subsystems/win32/win32k/ntuser/msgqueue.c [iso-8859-1] Wed
May 4 01:31:47 2011
@@ -1340,10 +1340,6 @@
case VK_LMENU: case VK_RMENU:
Msg->wParam = VK_MENU;
break;
- case VK_F10:
- if (Msg->message == WM_KEYUP) Msg->message = WM_SYSKEYUP;
- if (Msg->message == WM_KEYDOWN) Msg->message = WM_SYSKEYDOWN;
- break;
}
}