mirror of https://github.com/qt/qtbase.git
Windows QPA: Fix window state transition from minimized to normal.
Use SW_SHOWNORMAL instead SW_SHOWNOACTIVATE as a parameter to ShowWindow() to enforce the window to be restored to normal state, even if the state before minimized was maximized. Task-number: QTBUG-48449 Change-Id: I9436623b1495f574a72050e50e8b31bfc83ced5c Reviewed-by: Andy Shaw <andy.shaw@theqtcompany.com>
This commit is contained in:
parent
5d63e325fa
commit
5f00d18ad3
|
@ -1779,7 +1779,7 @@ void QWindowsWindow::setWindowState_sys(Qt::WindowState newState)
|
|||
if ((oldState == Qt::WindowMinimized) != (newState == Qt::WindowMinimized)) {
|
||||
if (visible)
|
||||
ShowWindow(m_data.hwnd, (newState == Qt::WindowMinimized) ? SW_MINIMIZE :
|
||||
(newState == Qt::WindowMaximized) ? SW_MAXIMIZE : SW_SHOWNOACTIVATE);
|
||||
(newState == Qt::WindowMaximized) ? SW_MAXIMIZE : SW_SHOWNORMAL);
|
||||
}
|
||||
qCDebug(lcQpaWindows) << '<' << __FUNCTION__ << this << window() << newState;
|
||||
}
|
||||
|
|
|
@ -1860,10 +1860,6 @@ void tst_QWidget::activation()
|
|||
QCOMPARE(QApplication::activeWindow(), &widget1);
|
||||
widget2.showNormal();
|
||||
QTest::qWait(waitTime);
|
||||
#ifndef Q_OS_WINCE
|
||||
if (QSysInfo::WindowsVersion >= QSysInfo::WV_VISTA)
|
||||
QEXPECT_FAIL("", "MS introduced new behavior after XP", Continue);
|
||||
#endif
|
||||
QTest::qWait(waitTime);
|
||||
QCOMPARE(QApplication::activeWindow(), &widget2);
|
||||
widget2.hide();
|
||||
|
|
Loading…
Reference in New Issue