[ros-diffs] [jimtabor] 23431: - Win32k, Merge from head - CreateWindowsEx: Patch based on janderwald patch. 1. Reading and following wine source (user/win.c & winex11.drv/window.c), I noticed that cs->hwndParent is unmodified when passed to the children via WM_NC/CREATE. This fixes edit control wine tests. Reduces the number to 14 failed. 2. Reordered the "fine the parent" code, based on wine. I've tested this change for last two weeks.
jimtabor at svn.reactos.org
jimtabor at svn.reactos.org
Thu Aug 3 02:50:59 CEST 2006
Author: jimtabor
Date: Thu Aug 3 04:50:59 2006
New Revision: 23431
URL: http://svn.reactos.org/svn/reactos?rev=23431&view=rev
Log:
- Win32k, Merge from head
- CreateWindowsEx: Patch based on janderwald patch.
1. Reading and following wine source (user/win.c & winex11.drv/window.c), I noticed that cs->hwndParent is unmodified when passed to the children via WM_NC/CREATE. This fixes edit control wine tests. Reduces the number to 14 failed.
2. Reordered the "fine the parent" code, based on wine. I've tested this change for last two weeks.
Modified:
branches/ros-branch-0_3_0/reactos/subsystems/win32/win32k/ntuser/window.c
Modified: branches/ros-branch-0_3_0/reactos/subsystems/win32/win32k/ntuser/window.c
URL: http://svn.reactos.org/svn/reactos/branches/ros-branch-0_3_0/reactos/subsystems/win32/win32k/ntuser/window.c?rev=23431&r1=23430&r2=23431&view=diff
==============================================================================
--- branches/ros-branch-0_3_0/reactos/subsystems/win32/win32k/ntuser/window.c (original)
+++ branches/ros-branch-0_3_0/reactos/subsystems/win32/win32k/ntuser/window.c Thu Aug 3 04:50:59 2006
@@ -1439,16 +1439,14 @@
}
else if (hWndParent)
{
- if (((dwStyle & (WS_CHILD | WS_POPUP)) == WS_CHILD) ||
- (dwExStyle & WS_EX_MDICHILD))
- ParentWindowHandle = hWndParent;
- else
- {
- //temp hack
+ if ((dwStyle & (WS_CHILD | WS_POPUP)) != WS_CHILD)
+ { //temp hack
PWINDOW_OBJECT Par = UserGetWindowObject(hWndParent), Root;
if (Par && (Root = UserGetAncestor(Par, GA_ROOT)))
OwnerWindowHandle = Root->hSelf;
}
+ else
+ ParentWindowHandle = hWndParent;
}
else if ((dwStyle & (WS_CHILD | WS_POPUP)) == WS_CHILD)
{
@@ -1685,7 +1683,7 @@
Cs.lpCreateParams = lpParam;
Cs.hInstance = hInstance;
Cs.hMenu = hMenu;
- Cs.hwndParent = ParentWindowHandle;
+ Cs.hwndParent = hWndParent; //Pass the original Parent handle!
Cs.cx = Size.cx;
Cs.cy = Size.cy;
Cs.x = Pos.x;
More information about the Ros-diffs
mailing list