diff --git a/dlls/winex11.drv/window.c b/dlls/winex11.drv/window.c index ba722721ad2..f46cbfb088a 100644 --- a/dlls/winex11.drv/window.c +++ b/dlls/winex11.drv/window.c @@ -752,6 +752,10 @@ static void set_mwm_hints( struct x11drv_win_data *data, DWORD style, DWORD ex_s if (style & WS_MINIMIZEBOX) mwm_hints.functions |= MWM_FUNC_MINIMIZE; if (style & WS_MAXIMIZEBOX) mwm_hints.functions |= MWM_FUNC_MAXIMIZE; if (style & WS_SYSMENU) mwm_hints.functions |= MWM_FUNC_CLOSE; + + /* The window can be programmatically minimized even without + a minimize box button. Allow the WM to restore it. */ + if (style & WS_MINIMIZE) mwm_hints.functions |= MWM_FUNC_MINIMIZE | MWM_FUNC_MAXIMIZE; } }