Author: jimtabor
Date: Sat Apr 9 07:08:17 2011
New Revision: 51290
URL: http://svn.reactos.org/svn/reactos?rev=51290&view=rev
Log:
[Win32k]
- Added more missed mouse injection flag and extra data being passed in and
from set cursor position. Wine mouse low level hook msg tests now see it and
check the validity of the hook message.
Modified:
trunk/reactos/subsystems/win32/win32k/include/cursoricon.h
trunk/reactos/subsystems/win32/win32k/ntuser/cursoricon.c
trunk/reactos/subsystems/win32/win32k/ntuser/input.c
trunk/reactos/subsystems/win32/win32k/ntuser/msgqueue.c
trunk/reactos/subsystems/win32/win32k/ntuser/simplecall.c
Modified: trunk/reactos/subsystems/win32/win32k/include/cursoricon.h
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/subsystems/win32/win32k/include/cursoricon.h?rev=51290&r1=51289&r2=51290&view=diff
==============================================================================
--- trunk/reactos/subsystems/win32/win32k/include/cursoricon.h [iso-8859-1]
(original)
+++ trunk/reactos/subsystems/win32/win32k/include/cursoricon.h [iso-8859-1] Sat
Apr 9 07:08:17 2011
@@ -69,7 +69,7 @@
INT cyHeight, UINT istepIfAniCur, HBRUSH hbrFlickerFreeDraw, UINT diFlags);
PCURICON_OBJECT FASTCALL UserGetCurIconObject(HCURSOR hCurIcon);
-BOOL UserSetCursorPos( INT x, INT y);
+BOOL UserSetCursorPos( INT x, INT y, DWORD flags, ULONG_PTR dwExtraInfo);
int UserShowCursor(BOOL bShow);
Modified: trunk/reactos/subsystems/win32/win32k/ntuser/cursoricon.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/subsystems/win32/win32k/ntuser/cursoricon.c?rev=51290&r1=51289&r2=51290&view=diff
==============================================================================
--- trunk/reactos/subsystems/win32/win32k/ntuser/cursoricon.c [iso-8859-1]
(original)
+++ trunk/reactos/subsystems/win32/win32k/ntuser/cursoricon.c [iso-8859-1] Sat
Apr 9 07:08:17 2011
@@ -159,7 +159,7 @@
return OldCursor;
}
-BOOL UserSetCursorPos( INT x, INT y)
+BOOL UserSetCursorPos( INT x, INT y, DWORD flags, ULONG_PTR dwExtraInfo)
{
PWND DesktopWindow;
PSYSTEM_CURSORINFO CurInfo;
@@ -199,7 +199,7 @@
Msg.wParam = CurInfo->ButtonsDown;
Msg.lParam = MAKELPARAM(x, y);
Msg.pt = pt;
- co_MsqInsertMouseMessage(&Msg, 0, 0);
+ co_MsqInsertMouseMessage(&Msg, flags, dwExtraInfo);
/* 1. Store the new cursor position */
gpsi->ptCursor = pt;
@@ -677,7 +677,7 @@
{
CurInfo->bClipped = TRUE;
RECTL_bIntersectRect(&CurInfo->rcClip, prcl, &DesktopWindow->rcWindow);
- UserSetCursorPos(gpsi->ptCursor.x, gpsi->ptCursor.y);
+ UserSetCursorPos(gpsi->ptCursor.x, gpsi->ptCursor.y, 0, 0);
}
else
{
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=51290&r1=51289&r2=51290&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] Sat Apr
9 07:08:17 2011
@@ -1138,7 +1138,7 @@
if(mi->dwFlags & MOUSEEVENTF_MOVE)
{
- UserSetCursorPos(MousePos.x, MousePos.y);
+ UserSetCursorPos(MousePos.x, MousePos.y, Injected, mi->dwExtraInfo);
}
if(mi->dwFlags & MOUSEEVENTF_LEFTDOWN)
{
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=51290&r1=51289&r2=51290&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] Sat
Apr 9 07:08:17 2011
@@ -294,7 +294,7 @@
MouseHistoryOfMoves[gcur_count].x = Msg->pt.x;
MouseHistoryOfMoves[gcur_count].y = Msg->pt.y;
MouseHistoryOfMoves[gcur_count].time = Msg->time;
- MouseHistoryOfMoves[gcur_count].dwExtraInfo = 0; // need to be passed from
IntMouseInput mi.dwExtraInfo.
+ MouseHistoryOfMoves[gcur_count].dwExtraInfo = dwExtraInfo;
if (gcur_count++ == 64) gcur_count = 0; // 0 - 63 is 64, FIFO forwards.
}
Modified: trunk/reactos/subsystems/win32/win32k/ntuser/simplecall.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/subsystems/win32/win32k/ntuser/simplecall.c?rev=51290&r1=51289&r2=51290&view=diff
==============================================================================
--- trunk/reactos/subsystems/win32/win32k/ntuser/simplecall.c [iso-8859-1]
(original)
+++ trunk/reactos/subsystems/win32/win32k/ntuser/simplecall.c [iso-8859-1] Sat
Apr 9 07:08:17 2011
@@ -473,7 +473,7 @@
RETURN( (DWORD_PTR)co_IntRegisterLogonProcess((HANDLE)Param1,
(BOOL)Param2));
case TWOPARAM_ROUTINE_SETCURSORPOS:
- RETURN( (DWORD_PTR)UserSetCursorPos((int)Param1, (int)Param2));
+ RETURN( (DWORD_PTR)UserSetCursorPos((int)Param1, (int)Param2, 0, 0));
case TWOPARAM_ROUTINE_UNHOOKWINDOWSHOOK:
RETURN( IntUnhookWindowsHook((int)Param1, (HOOKPROC)Param2));