Author: gadamopoulos
Date: Sat Jan 15 20:13:44 2011
New Revision: 50393
URL:
http://svn.reactos.org/svn/reactos?rev=50393&view=rev
Log:
swm isn't always the best solution. Instead of reinverting the well we can also use
win32 api
Modified:
branches/arwinss/reactos/dll/win32/winent.drv/mouse.c
branches/arwinss/reactos/include/reactos/wine/rosuser.h
branches/arwinss/reactos/subsystems/win32/win32k/swm/winman.c
branches/arwinss/reactos/subsystems/win32/win32k/w32ksvc.db
Modified: branches/arwinss/reactos/dll/win32/winent.drv/mouse.c
URL:
http://svn.reactos.org/svn/reactos/branches/arwinss/reactos/dll/win32/winen…
==============================================================================
--- branches/arwinss/reactos/dll/win32/winent.drv/mouse.c [iso-8859-1] (original)
+++ branches/arwinss/reactos/dll/win32/winent.drv/mouse.c [iso-8859-1] Sat Jan 15 20:13:44
2011
@@ -178,7 +178,7 @@
}
/* get the window handle from cursor position */
- hwnd = SwmGetWindowFromPoint(pt.x, pt.y);
+ hwnd = ChildWindowFromPointEx(GetDesktopWindow(), pt, CWP_SKIPINVISIBLE);
if (flags & MOUSEEVENTF_MOVE)
{
Modified: branches/arwinss/reactos/include/reactos/wine/rosuser.h
URL:
http://svn.reactos.org/svn/reactos/branches/arwinss/reactos/include/reactos…
==============================================================================
--- branches/arwinss/reactos/include/reactos/wine/rosuser.h [iso-8859-1] (original)
+++ branches/arwinss/reactos/include/reactos/wine/rosuser.h [iso-8859-1] Sat Jan 15
20:13:44 2011
@@ -230,9 +230,6 @@
VOID NTAPI
SwmPosChanged(GR_WINDOW_ID Wid, const RECT *WindowRect, const RECT *OldRect, HWND
hWndAfter, UINT SwpFlags);
-HWND NTAPI
-SwmGetWindowFromPoint(LONG x, LONG y);
-
VOID NTAPI
SwmShowWindow(GR_WINDOW_ID Wid, BOOLEAN Show, UINT SwpFlags);
Modified: branches/arwinss/reactos/subsystems/win32/win32k/swm/winman.c
URL:
http://svn.reactos.org/svn/reactos/branches/arwinss/reactos/subsystems/win3…
==============================================================================
--- branches/arwinss/reactos/subsystems/win32/win32k/swm/winman.c [iso-8859-1] (original)
+++ branches/arwinss/reactos/subsystems/win32/win32k/swm/winman.c [iso-8859-1] Sat Jan 15
20:13:44 2011
@@ -887,47 +887,6 @@
/* Release the lock */
SwmRelease();
-}
-
-HWND
-NTAPI
-SwmGetWindowFromPoint(LONG x, LONG y)
-{
- PLIST_ENTRY Current;
- PSWM_WINDOW Window;
-
- /* Acquire the lock */
- SwmAcquire();
-
- /* Traverse the list to find our window */
- Current = SwmWindows.Flink;
- while(Current != &SwmWindows)
- {
- Window = CONTAINING_RECORD(Current, SWM_WINDOW, Entry);
-
- /* Skip hidden windows */
- if (Window->Hidden)
- {
- /* Advance to the next window */
- Current = Current->Flink;
- continue;
- }
-
- if (point_in_region(Window->Visible, x, y))
- {
- /* Release the lock */
- SwmRelease();
-
- return Window->hwnd;
- }
- /* Advance to the next window */
- Current = Current->Flink;
- }
-
- /* Release the lock */
- SwmRelease();
-
- return 0;
}
VOID
Modified: branches/arwinss/reactos/subsystems/win32/win32k/w32ksvc.db
URL:
http://svn.reactos.org/svn/reactos/branches/arwinss/reactos/subsystems/win3…
==============================================================================
--- branches/arwinss/reactos/subsystems/win32/win32k/w32ksvc.db [iso-8859-1] (original)
+++ branches/arwinss/reactos/subsystems/win32/win32k/w32ksvc.db [iso-8859-1] Sat Jan 15
20:13:44 2011
@@ -91,6 +91,5 @@
SwmDestroyWindow 1
SwmSetForeground 1
SwmPosChanged 5
-SwmGetWindowFromPoint 2
SwmShowWindow 3
NtUserInitialize 3