reactos/subsys/win32k/include
diff -u -r1.10 -r1.11
--- winpos.h 24 Feb 2004 13:27:02 -0000 1.10
+++ winpos.h 24 Feb 2004 15:56:52 -0000 1.11
@@ -20,7 +20,7 @@
BOOLEAN FASTCALL
WinPosShowWindow(HWND Wnd, INT Cmd);
USHORT FASTCALL
-WinPosWindowFromPoint(PWINDOW_OBJECT ScopeWin, POINT *WinPoint,
+WinPosWindowFromPoint(PWINDOW_OBJECT ScopeWin, BOOL SendProcHitTests, POINT *WinPoint,
PWINDOW_OBJECT* Window);
VOID FASTCALL WinPosActivateOtherWindow(PWINDOW_OBJECT Window);
reactos/subsys/win32k/ntuser
diff -u -r1.71 -r1.72
--- msgqueue.c 24 Feb 2004 13:27:03 -0000 1.71
+++ msgqueue.c 24 Feb 2004 15:56:52 -0000 1.72
@@ -16,7 +16,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*/
-/* $Id: msgqueue.c,v 1.71 2004/02/24 13:27:03 weiden Exp $
+/* $Id: msgqueue.c,v 1.72 2004/02/24 15:56:52 weiden Exp $
*
* COPYRIGHT: See COPYING in the top level directory
* PROJECT: ReactOS kernel
@@ -255,9 +255,7 @@
Msg == WM_RBUTTONDOWN ||
Msg == WM_XBUTTONDOWN)
{
- USHORT Hit = WinPosWindowFromPoint(ScopeWin,
- &Message->Msg.pt,
- &Window);
+ USHORT Hit = WinPosWindowFromPoint(ScopeWin, FALSE, &Message->Msg.pt, &Window);
/*
**Make sure that we have a window that is not already in focus
*/
@@ -315,7 +313,7 @@
}
else
{
- *HitTest = WinPosWindowFromPoint(ScopeWin, &Message->Msg.pt, &Window);
+ *HitTest = WinPosWindowFromPoint(ScopeWin, FALSE, &Message->Msg.pt, &Window);
if(!Window)
{
/* change the cursor on desktop background */
reactos/subsys/win32k/ntuser
diff -u -r1.192 -r1.193
--- window.c 24 Feb 2004 13:27:03 -0000 1.192
+++ window.c 24 Feb 2004 15:56:52 -0000 1.193
@@ -16,7 +16,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*/
-/* $Id: window.c,v 1.192 2004/02/24 13:27:03 weiden Exp $
+/* $Id: window.c,v 1.193 2004/02/24 15:56:52 weiden Exp $
*
* COPYRIGHT: See COPYING in the top level directory
* PROJECT: ReactOS kernel
@@ -3373,7 +3373,7 @@
pt.x = X;
pt.y = Y;
- Hit = WinPosWindowFromPoint(DesktopWindow, &pt, &Window);
+ Hit = WinPosWindowFromPoint(DesktopWindow, TRUE, &pt, &Window);
if(Window)
{
reactos/subsys/win32k/ntuser
diff -u -r1.99 -r1.100
--- winpos.c 24 Feb 2004 13:27:03 -0000 1.99
+++ winpos.c 24 Feb 2004 15:56:53 -0000 1.100
@@ -16,7 +16,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*/
-/* $Id: winpos.c,v 1.99 2004/02/24 13:27:03 weiden Exp $
+/* $Id: winpos.c,v 1.100 2004/02/24 15:56:53 weiden Exp $
*
* COPYRIGHT: See COPYING in the top level directory
* PROJECT: ReactOS kernel
@@ -1277,7 +1277,7 @@
}
BOOL STATIC FASTCALL
-WinPosSearchChildren(PWINDOW_OBJECT ScopeWin, POINT *Point,
+WinPosSearchChildren(PWINDOW_OBJECT ScopeWin, BOOL SendProcHitTests, POINT *Point,
PWINDOW_OBJECT* Window, USHORT *HitTest)
{
PWINDOW_OBJECT Current;
@@ -1314,7 +1314,9 @@
return TRUE;
}
- if(Current->MessageQueue == PsGetWin32Thread()->MessageQueue)
+ if((SendProcHitTests &&
+ (Current->OwnerThread->ThreadsProcess == PsGetCurrentProcess())) ||
+ (Current->MessageQueue == PsGetWin32Thread()->MessageQueue))
{
*HitTest = IntSendMessage(Current->Self, WM_NCHITTEST, 0,
MAKELONG(Point->x, Point->y));
@@ -1334,7 +1336,7 @@
Point->y < Current->ClientRect.bottom)
{
USHORT ChildHitTest;
- if(WinPosSearchChildren(Current, Point, Window, &ChildHitTest))
+ if(WinPosSearchChildren(Current, SendProcHitTests, Point, Window, &ChildHitTest))
{
*HitTest = ChildHitTest;
ExFreePool(List);
@@ -1357,7 +1359,7 @@
}
USHORT FASTCALL
-WinPosWindowFromPoint(PWINDOW_OBJECT ScopeWin, POINT *WinPoint,
+WinPosWindowFromPoint(PWINDOW_OBJECT ScopeWin, BOOL SendProcHitTests, POINT *WinPoint,
PWINDOW_OBJECT* Window)
{
HWND DesktopWindowHandle;
@@ -1387,7 +1389,7 @@
IntReleaseWindowObject(DesktopWindow);
}
- if(WinPosSearchChildren(ScopeWin, &Point, Window, &HitTest))
+ if(WinPosSearchChildren(ScopeWin, SendProcHitTests, &Point, Window, &HitTest))
{
return HitTest;
}