diff options
author | Joerg Bornemann <joerg.bornemann@nokia.com> | 2012-07-06 14:49:34 +0200 |
---|---|---|
committer | Qt by Nokia <qt-info@nokia.com> | 2012-07-09 10:50:27 +0200 |
commit | a2bd91c5e96146fb2211d21e06071a1c21cf030c (patch) | |
tree | cae925e114d88d0f413e2ac6e9d9518cda7a162d /src/plugins/platforms | |
parent | 84e84b507cd6c1bf40cdc52429e38323dc1a4205 (diff) |
QWindowsWindow: fix restoring from minimized to fullscreen
This fixes the state transition FullScreen -> Minimized -> FullScreen.
Task-number: QTBUG-26420
Change-Id: I555c4f332e796b465149e592c2583d615b37c4ec
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
Diffstat (limited to 'src/plugins/platforms')
-rw-r--r-- | src/plugins/platforms/windows/qwindowswindow.cpp | 9 | ||||
-rw-r--r-- | src/plugins/platforms/windows/qwindowswindow.h | 1 |
2 files changed, 8 insertions, 2 deletions
diff --git a/src/plugins/platforms/windows/qwindowswindow.cpp b/src/plugins/platforms/windows/qwindowswindow.cpp index a2a7950fad..0593778635 100644 --- a/src/plugins/platforms/windows/qwindowswindow.cpp +++ b/src/plugins/platforms/windows/qwindowswindow.cpp @@ -980,7 +980,7 @@ void QWindowsWindow::handleResized(int wParam) break; case SIZE_RESTORED: if (m_windowState != Qt::WindowNoState) - handleWindowStateChange(Qt::WindowNoState); + handleWindowStateChange(isFullScreen_sys() ? Qt::WindowFullScreen : Qt::WindowNoState); handleGeometryChange(); break; } @@ -1170,7 +1170,7 @@ Qt::WindowState QWindowsWindow::windowState_sys() const return Qt::WindowMinimized; if (IsZoomed(m_data.hwnd)) return Qt::WindowMaximized; - if (geometry_sys() == window()->screen()->geometry()) + if (isFullScreen_sys()) return Qt::WindowFullScreen; return Qt::WindowNoState; } @@ -1183,6 +1183,11 @@ Qt::WindowStates QWindowsWindow::windowStates_sys() const return result; } +bool QWindowsWindow::isFullScreen_sys() const +{ + return geometry_sys() == window()->screen()->geometry(); +} + /*! \brief Change the window state. diff --git a/src/plugins/platforms/windows/qwindowswindow.h b/src/plugins/platforms/windows/qwindowswindow.h index 475982aba4..ff99d5c1ae 100644 --- a/src/plugins/platforms/windows/qwindowswindow.h +++ b/src/plugins/platforms/windows/qwindowswindow.h @@ -246,6 +246,7 @@ private: inline QRect frameGeometry_sys() const; inline QRect geometry_sys() const; inline WindowData setWindowFlags_sys(Qt::WindowFlags wt, unsigned flags = 0) const; + inline bool isFullScreen_sys() const; inline void setWindowState_sys(Qt::WindowState newState); inline void setParent_sys(const QPlatformWindow *parent) const; inline void setMouseGrabEnabled_sys(bool grab); |