Windows: Fix window geometry when transiting from fullscreen to maximized.

The workaround added for QTBUG-8361 also needs to trigger in the
restore-from-fullscreen logic, set flag accordingly.

Task-number: QTBUG-40254
Task-number: QTBUG-8361
Change-Id: I6d6c35bb7004c84c6b8feea05ad974c23ca205d2
Reviewed-by: Oliver Wolff <oliver.wolff@digia.com>
bb10
Friedemann Kleint 2014-07-21 13:55:30 +02:00
parent cf5e496813
commit ae99f83312
1 changed files with 4 additions and 1 deletions

View File

@ -1696,8 +1696,11 @@ void QWindowsWindow::setWindowState_sys(Qt::WindowState newState)
if (!wasSync)
clearFlag(SynchronousGeometryChangeEvent);
// preserve maximized state
if (visible)
if (visible) {
setFlag(WithinMaximize);
ShowWindow(m_data.hwnd, (newState == Qt::WindowMaximized) ? SW_MAXIMIZE : SW_SHOWNOACTIVATE);
clearFlag(WithinMaximize);
}
m_savedStyle = 0;
m_savedFrameGeometry = QRect();
}