[pkg-wine-party] [SCM] Debian Wine packaging branch, wheezy, updated. wine-1.4-7-302-gb61b690

Alexandre Julliard julliard at winehq.org
Sun Jun 17 20:04:06 UTC 2012


The following commit has been merged in the wheezy branch:
commit 3110813c4e2fb883e46ccbb5863cece08e791332
Author: Dmitry Timoshkov <dmitry at baikal.ru>
Date:   Fri Mar 23 16:58:13 2012 +0800

    user32: SetWindowPos() should check the final window position in screen coords before adding SWP_NOMOVE.
    (cherry picked from commit 38a76ecb0386d37d30b06b7947ed52be77ec9f1e)

diff --git a/dlls/user32/winpos.c b/dlls/user32/winpos.c
index 42f6b3e..c4b61a8 100644
--- a/dlls/user32/winpos.c
+++ b/dlls/user32/winpos.c
@@ -1849,6 +1849,7 @@ static BOOL fixup_flags( WINDOWPOS *winpos )
 {
     HWND parent;
     RECT window_rect;
+    POINT pt;
     WND *wndPtr = WIN_GetPtr( winpos->hwnd );
     BOOL ret = TRUE;
 
@@ -1880,12 +1881,15 @@ static BOOL fixup_flags( WINDOWPOS *winpos )
         if (!(winpos->flags & SWP_SHOWWINDOW)) winpos->flags |= SWP_NOREDRAW;
     }
 
-    WIN_GetRectangles( winpos->hwnd, COORDS_PARENT, &window_rect, NULL );
+    WIN_GetRectangles( winpos->hwnd, COORDS_SCREEN, &window_rect, NULL );
     if ((window_rect.right - window_rect.left == winpos->cx) &&
         (window_rect.bottom - window_rect.top == winpos->cy))
         winpos->flags |= SWP_NOSIZE;    /* Already the right size */
 
-    if ((window_rect.left == winpos->x) && (window_rect.top == winpos->y))
+    pt.x = winpos->x;
+    pt.y = winpos->y;
+    ClientToScreen( parent, &pt );
+    if ((window_rect.left == pt.x) && (window_rect.top == pt.y))
         winpos->flags |= SWP_NOMOVE;    /* Already the right position */
 
     if ((wndPtr->dwStyle & (WS_POPUP | WS_CHILD)) != WS_CHILD)

-- 
Debian Wine packaging



More information about the pkg-wine-party mailing list