From c9fe2fcba4305376127df776508d808283535dfb Mon Sep 17 00:00:00 2001 From: Giannis Adamopoulos Date: Sat, 3 Sep 2011 17:53:14 +0000 Subject: [PATCH] [win32k] - SetWindowPos should send WM_MOUSEMOVE only when the window under the cursor changes - Fixes moving winamp window svn path=/trunk/; revision=53554 --- reactos/subsystems/win32/win32k/ntuser/winpos.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/reactos/subsystems/win32/win32k/ntuser/winpos.c b/reactos/subsystems/win32/win32k/ntuser/winpos.c index 899eba84224..eb9f132fe56 100644 --- a/reactos/subsystems/win32/win32k/ntuser/winpos.c +++ b/reactos/subsystems/win32/win32k/ntuser/winpos.c @@ -950,6 +950,7 @@ co_WinPosSetWindowPos( HDC Dc; RECTL CopyRect; PWND Ancestor; + BOOL bPointerInWindow; ASSERT_REFS_CO(Window); @@ -963,6 +964,7 @@ co_WinPosSetWindowPos( { return FALSE; } + bPointerInWindow = IntPtInWindow(Window, gpsi->ptCursor.x, gpsi->ptCursor.y); WinPos.hwnd = Window->head.h; WinPos.hwndInsertAfter = WndInsertAfter; @@ -1329,7 +1331,7 @@ co_WinPosSetWindowPos( IntNotifyWinEvent(EVENT_OBJECT_LOCATIONCHANGE, pWnd, OBJID_WINDOW, CHILDID_SELF, WEF_SETBYWNDPTI); } - if(IntPtInWindow(Window, gpsi->ptCursor.x, gpsi->ptCursor.y)) + if(bPointerInWindow != IntPtInWindow(Window, gpsi->ptCursor.x, gpsi->ptCursor.y)) { /* Generate mouse move message */ MSG msg;