Index: dlls/user32/mdi.c =================================================================== RCS file: /home/wine/wine/dlls/user32/mdi.c,v retrieving revision 1.24 diff -u -p -u -r1.24 mdi.c --- dlls/user32/mdi.c 5 Mar 2008 19:42:23 -0000 1.24 +++ dlls/user32/mdi.c 18 Apr 2008 13:57:21 -0000 @@ -649,6 +649,9 @@ static LONG MDI_ChildActivate( HWND clie } SendMessageW( child, WM_MDIACTIVATE, (WPARAM)prevActiveWnd, (LPARAM)child ); + + SetWindowPos( frame, 0, 0, 0, 0, 0, SWP_NOMOVE|SWP_NOSIZE|SWP_NOACTIVATE|SWP_FRAMECHANGED|SWP_NOZORDER ); + return TRUE; } Index: dlls/user32/tests/msg.c =================================================================== RCS file: /home/wine/wine/dlls/user32/tests/msg.c,v retrieving revision 1.69 diff -u -p -u -r1.69 msg.c --- dlls/user32/tests/msg.c 7 Apr 2008 11:52:17 -0000 1.69 +++ dlls/user32/tests/msg.c 18 Apr 2008 12:27:46 -0000 @@ -3189,7 +3233,7 @@ static void test_mdi_messages(void) 0, 0, CW_USEDEFAULT, CW_USEDEFAULT, mdi_client, 0, GetModuleHandleA(0), NULL); assert(mdi_child); - ok_sequence(WmCreateMDIchildVisibleMaxSeq1, "Create maximized visible 1st MDI child window", TRUE); + ok_sequence(WmCreateMDIchildVisibleMaxSeq1, "Create maximized visible 1st MDI child window", FALSE); ok(IsZoomed(mdi_child), "1st MDI child should be maximized\n"); ok(GetActiveWindow() == mdi_frame, "wrong active window %p\n", GetActiveWindow()); @@ -3335,7 +3379,7 @@ static void test_mdi_messages(void) 0, 0, CW_USEDEFAULT, CW_USEDEFAULT, mdi_client, 0, GetModuleHandleA(0), NULL); assert(mdi_child); - ok_sequence(WmCreateMDIchildVisibleMaxSeq1, "Create maximized visible 1st MDI child window(Switch test)", TRUE); + ok_sequence(WmCreateMDIchildVisibleMaxSeq1, "Create maximized visible 1st MDI child window(Switch test)", FALSE); ok(IsZoomed(mdi_child), "1st MDI child should be maximized(Switch test)\n"); ok(GetActiveWindow() == mdi_frame, "wrong active window %p(Switch test)\n", GetActiveWindow());