diff options
author | Jon TURNEY <jon.turney@dronecode.org.uk> | 2010-08-12 15:00:01 +0100 |
---|---|---|
committer | Jon TURNEY <jon.turney@dronecode.org.uk> | 2011-06-29 19:14:35 +0100 |
commit | e78628406f0428454983db1c51a8c828bf5684e5 (patch) | |
tree | d694d7bd9118f5e46de6478a0d9069d795857948 /hw/xwin/winwindow.h | |
parent | 1d7f3a0031b4ae7d8aa984799ffa578788061ce4 (diff) |
Cygwin/X: Preserve client area size and position on Windows window style change
When the style changes, adjust the window size so the client area remains the same.
Otherwise the window size may change when sizing is reflected from Windows to X, and
some windows are drawn expecting them to be exactly the requested size (e.g. the
gmplayer control window)
Use DeferWindowPos to delay the resize to preserve client area on WM_STYLECHANGING
until after the style change has actually happened in WM_STYLECHANGED
As a consquence of this, we need to be more careful to create windows with exactly
the requested placement and client area initially, so the client area matches what
the X client requested
Also synchronize the X windows idea of the placement of a window which Windows is
allowed to place
Signed-off-by: Jon TURNEY <jon.turney@dronecode.org.uk>
Reviewed-by: Colin Harrison <colin.harrison@virgin.net>
Tested-by: Colin Harrison <colin.harrison@virgin.net>
Diffstat (limited to 'hw/xwin/winwindow.h')
-rw-r--r-- | hw/xwin/winwindow.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/hw/xwin/winwindow.h b/hw/xwin/winwindow.h index cf2f93f0a..ebe43091f 100644 --- a/hw/xwin/winwindow.h +++ b/hw/xwin/winwindow.h @@ -79,6 +79,7 @@ typedef struct HWND hWnd; winPrivScreenPtr pScreenPriv; Bool fXKilled; + HDWP hDwp; /* Privates used by primary fb DirectDraw server */ LPDDSURFACEDESC pddsdPrimary; |