- 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.

svn path=/trunk/; revision=51290
This commit is contained in:
James Tabor 2011-04-09 07:08:17 +00:00
parent 02a6a17e28
commit f78f9456fb
5 changed files with 7 additions and 7 deletions

View file

@ -69,7 +69,7 @@ BOOL UserDrawIconEx(HDC hDc, INT xLeft, INT yTop, PCURICON_OBJECT pIcon, INT cxW
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);

View file

@ -159,7 +159,7 @@ UserSetCursor(
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 @@ BOOL UserSetCursorPos( INT x, INT y)
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 @@ UserClipCursor(
{
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
{

View file

@ -1138,7 +1138,7 @@ IntMouseInput(MOUSEINPUT *mi, BOOL Injected)
if(mi->dwFlags & MOUSEEVENTF_MOVE)
{
UserSetCursorPos(MousePos.x, MousePos.y);
UserSetCursorPos(MousePos.x, MousePos.y, Injected, mi->dwExtraInfo);
}
if(mi->dwFlags & MOUSEEVENTF_LEFTDOWN)
{

View file

@ -294,7 +294,7 @@ co_MsqInsertMouseMessage(MSG* Msg, DWORD flags, ULONG_PTR dwExtraInfo)
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.
}

View file

@ -473,7 +473,7 @@ NtUserCallTwoParam(
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));