Fix test being flaky on Linux

The cause is that the first EXPOSE event comes with the window not
having focus yet. See QTBUG-105177.

Also remove processEvents() as events are always processed when doing
qWaitFor...().

Task-number: QTBUG-105177
Change-Id: I2260d1885388bbf7091c423bc9b4c16e2ed0090f
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
bb10
Dimitrios Apostolou 2022-07-25 18:53:19 +02:00
parent 2f8127f526
commit 57be602fde
2 changed files with 1 additions and 7 deletions

View File

@ -1,9 +1,4 @@
[positioning]
opensuse-leap
[positioning:default]
linux
macos ci
[positioning:fake]
macos ci
[modalWithChildWindow]
# QTBUG-69160

View File

@ -517,9 +517,8 @@ void tst_QWindow::positioning()
QCOMPARE(window.geometry(), geometry);
// explicitly use non-fullscreen show. show() can be fullscreen on some platforms
window.showNormal();
QCoreApplication::processEvents();
QVERIFY(QTest::qWaitForWindowExposed(&window));
QVERIFY(QTest::qWaitForWindowActive(&window));
QMargins originalMargins = window.frameMargins();