On 2/19/19 5:33 AM, Alexandre Julliard wrote:
Zebediah Figura <z.figura12(a)gmail.com> writes:
diff --git a/dlls/winex11.drv/window.c b/dlls/winex11.drv/window.c index 1a61b6cf2c..7e08abdfa2 100644 --- a/dlls/winex11.drv/window.c +++ b/dlls/winex11.drv/window.c @@ -2443,17 +2443,6 @@ void CDECL X11DRV_WindowPosChanged( HWND hwnd, HWND insert_after, UINT swp_flags release_win_data( data ); }
-/* check if the window icon should be hidden (i.e. moved off-screen) */ -static BOOL hide_icon( struct x11drv_win_data *data ) -{ - static const WCHAR trayW[] = {'S','h','e','l','l','_','T','r','a','y','W','n','d',0}; - - if (data->managed) return TRUE; - /* hide icons in desktop mode when the taskbar is active */ - if (root_window == DefaultRootWindow( gdi_display )) return FALSE; - return IsWindowVisible( FindWindowW( trayW, NULL )); -} - /*********************************************************************** * ShowWindow (X11DRV.@) */ @@ -2469,15 +2458,7 @@ UINT CDECL X11DRV_ShowWindow( HWND hwnd, INT cmd, RECT *rect, UINT swp )
if (!data || !data->whole_window) goto done; if (IsRectEmpty( rect )) goto done; - if (style & WS_MINIMIZE) - { - if (((rect->left != -32000 || rect->top != -32000)) && hide_icon( data )) - { - OffsetRect( rect, -32000 - rect->left, -32000 - rect->top ); - swp &= ~(SWP_NOMOVE | SWP_NOCLIENTMOVE); - } - goto done; - } + if (style & WS_MINIMIZE) goto done;
This means that there would be no way to recover the window if the taskbar isn't active. I'm not sure that's what we want.
Right, I see. Judging from the test failures caused by SetShellWindow(), I guess the right thing to do in this case is to move it to the bottom left of the screen, like owned windows.