Fix the order of window style setting.
Modified: trunk/reactos/subsys/win32k/ntuser/window.c
_____
Modified: trunk/reactos/subsys/win32k/ntuser/window.c
--- trunk/reactos/subsys/win32k/ntuser/window.c 2005-09-20 08:00:00 UTC
(rev 17941)
+++ trunk/reactos/subsys/win32k/ntuser/window.c 2005-09-20 09:28:18 UTC
(rev 17942)
@@ -1468,10 +1468,6 @@
InsertTailList(&Class->ClassWindowsListHead,
&Window->ClassListEntry);
- Window->ExStyle = dwExStyle;
- Window->Style = dwStyle & ~WS_VISIBLE;
- DPRINT("1: Style is now %lx\n", Window->Style);
-
Window->SystemMenu = (HMENU)0;
Window->ContextHelpId = 0;
Window->IDMenu = 0;
@@ -1571,19 +1567,19 @@
/* Correct the window style. */
if (!(dwStyle & WS_CHILD))
{
- Window->Style |= WS_CLIPSIBLINGS;
- DPRINT("3: Style is now %lx\n", Window->Style);
+ dwStyle |= WS_CLIPSIBLINGS;
+ DPRINT("3: Style is now %lx\n", dwStyle);
if (!(dwStyle & WS_POPUP))
{
- Window->Style |= WS_CAPTION;
+ dwStyle |= WS_CAPTION;
Window->Flags |= WINDOWOBJECT_NEED_SIZE;
- DPRINT("4: Style is now %lx\n", Window->Style);
+ DPRINT("4: Style is now %lx\n", dwStyle);
}
}
/* create system menu */
- if((Window->Style & WS_SYSMENU) &&
- (Window->Style & WS_CAPTION) == WS_CAPTION)
+ if((dwStyle & WS_SYSMENU) &&
+ (dwStyle & WS_CAPTION) == WS_CAPTION)
{
SystemMenu = IntGetSystemMenu(Window, TRUE, TRUE);
if(SystemMenu)
@@ -1608,6 +1604,9 @@
Size.cx = nWidth;
Size.cy = nHeight;
+ Window->ExStyle = dwExStyle;
+ Window->Style = dwStyle & ~WS_VISIBLE;
+
/* call hook */
Cs.lpCreateParams = lpParam;
Cs.hInstance = hInstance;
@@ -1617,7 +1616,7 @@
Cs.cy = Size.cy;
Cs.x = Pos.x;
Cs.y = Pos.y;
- Cs.style = dwStyle;
+ Cs.style = Window->Style;
Cs.lpszName = (LPCWSTR) WindowName;
Cs.lpszClass = (LPCWSTR) ClassName;
Cs.dwExStyle = dwExStyle;
@@ -2569,13 +2568,11 @@
case GA_ROOT:
{
- PWINDOW_OBJECT tmp;
WndAncestor = Wnd;
Parent = NULL;
for(;;)
{
- tmp = Parent;
if(!(Parent = WndAncestor->Parent))
{
break;
Show replies by date