diff --git a/windows/mdi.c b/windows/mdi.c
index 9150a7b125036e045dbdb1ed9a4a86fe38c9082e..1f65c0e1a54066dbfe79296c480d500e4583d585 100644
--- a/windows/mdi.c
+++ b/windows/mdi.c
@@ -1750,8 +1750,15 @@ LRESULT WINAPI DefMDIChildProc16( HWND16 hwnd, UINT16 message,
 
 	    TRACE("maximizing child %04x\n", hwnd );
 
+	    /*
+	     * Keep track of the maximized window.
+	     */
 	    ci->hwndChildMaximized = hwnd; /* !!! */
-	    ci->hwndActiveChild = hwnd;
+
+	    /*
+	     * The maximized window should also be the active window
+	     */
+	    MDI_ChildActivate(clientWnd, hwnd);
 
 	    MDI_AugmentFrameMenu( ci, clientWnd->parent, hwnd);
 	    MDI_UpdateFrameText( clientWnd->parent, ci->self,