diff options
Diffstat (limited to 'src')
-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); |