Module: wine Branch: master Commit: 07b9f3f609e6c6d6d4b9af4c223392479ba99afb URL: https://source.winehq.org/git/wine.git/?a=commit;h=07b9f3f609e6c6d6d4b9af4c2...
Author: Rémi Bernon rbernon@codeweavers.com Date: Fri May 14 13:40:04 2021 +0200
user32: Factor IsRectEmpty driver check in ShowWindow.
Signed-off-by: Rémi Bernon rbernon@codeweavers.com Signed-off-by: Alexandre Julliard julliard@winehq.org
---
dlls/user32/winpos.c | 6 ++++-- dlls/wineandroid.drv/window.c | 1 - dlls/winemac.drv/window.c | 1 - dlls/winex11.drv/window.c | 1 - 4 files changed, 4 insertions(+), 5 deletions(-)
diff --git a/dlls/user32/winpos.c b/dlls/user32/winpos.c index c6f806f7beb..cf7e7914869 100644 --- a/dlls/user32/winpos.c +++ b/dlls/user32/winpos.c @@ -1044,7 +1044,7 @@ static BOOL show_window( HWND hwnd, INT cmd ) BOOL wasVisible = (style & WS_VISIBLE) != 0; BOOL showFlag = TRUE; RECT newPos = {0, 0, 0, 0}; - UINT swp = 0; + UINT new_swp, swp = 0;
TRACE("hwnd=%p, cmd=%d, wasVisible %d\n", hwnd, cmd, wasVisible);
@@ -1117,7 +1117,9 @@ static BOOL show_window( HWND hwnd, INT cmd ) if (!IsWindow( hwnd )) goto done; }
- swp = USER_Driver->pShowWindow( hwnd, cmd, &newPos, swp ); + if (IsRectEmpty( &newPos )) new_swp = swp; + else new_swp = USER_Driver->pShowWindow( hwnd, cmd, &newPos, swp ); + swp = new_swp;
parent = GetAncestor( hwnd, GA_PARENT ); if (parent && !IsWindowVisible( parent ) && !(swp & SWP_STATECHANGED)) diff --git a/dlls/wineandroid.drv/window.c b/dlls/wineandroid.drv/window.c index 1cb1bbbadc9..1c61d4eb76e 100644 --- a/dlls/wineandroid.drv/window.c +++ b/dlls/wineandroid.drv/window.c @@ -1385,7 +1385,6 @@ void CDECL ANDROID_WindowPosChanged( HWND hwnd, HWND insert_after, UINT swp_flag */ UINT CDECL ANDROID_ShowWindow( HWND hwnd, INT cmd, RECT *rect, UINT swp ) { - if (IsRectEmpty( rect )) return swp; if (!IsIconic( hwnd )) return swp; /* always hide icons off-screen */ if (rect->left != -32000 || rect->top != -32000) diff --git a/dlls/winemac.drv/window.c b/dlls/winemac.drv/window.c index e7f5327fcdc..4e60189ead9 100644 --- a/dlls/winemac.drv/window.c +++ b/dlls/winemac.drv/window.c @@ -1798,7 +1798,6 @@ UINT CDECL macdrv_ShowWindow(HWND hwnd, INT cmd, RECT *rect, UINT swp) hwnd, data ? data->cocoa_window : NULL, cmd, wine_dbgstr_rect(rect), swp);
if (!data || !data->cocoa_window) goto done; - if (IsRectEmpty(rect)) goto done; if (GetWindowLongW(hwnd, GWL_STYLE) & WS_MINIMIZE) { if (rect->left != -32000 || rect->top != -32000) diff --git a/dlls/winex11.drv/window.c b/dlls/winex11.drv/window.c index b3ae5c54408..c30fe6d39b0 100644 --- a/dlls/winex11.drv/window.c +++ b/dlls/winex11.drv/window.c @@ -2560,7 +2560,6 @@ UINT CDECL X11DRV_ShowWindow( HWND hwnd, INT cmd, RECT *rect, UINT swp ) struct x11drv_win_data *data = get_win_data( hwnd );
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 ))