summaryrefslogtreecommitdiffstats
path: root/tests/auto/widgets/widgets/qmenu/tst_qmenu.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'tests/auto/widgets/widgets/qmenu/tst_qmenu.cpp')
-rw-r--r--tests/auto/widgets/widgets/qmenu/tst_qmenu.cpp18
1 files changed, 10 insertions, 8 deletions
diff --git a/tests/auto/widgets/widgets/qmenu/tst_qmenu.cpp b/tests/auto/widgets/widgets/qmenu/tst_qmenu.cpp
index 3b8d69c6fd..28e8ba81d6 100644
--- a/tests/auto/widgets/widgets/qmenu/tst_qmenu.cpp
+++ b/tests/auto/widgets/widgets/qmenu/tst_qmenu.cpp
@@ -1175,25 +1175,27 @@ void tst_QMenu::click_while_dismissing_submenu()
menu.addMenu(&sub);
centerOnScreen(&menu, QSize(120, 100));
menu.show();
- QSignalSpy spy(action, SIGNAL(triggered()));
- QSignalSpy menuShownSpy(&sub, SIGNAL(aboutToShow()));
- QSignalSpy menuHiddenSpy(&sub, SIGNAL(aboutToHide()));
+ QSignalSpy spy(action, &QAction::triggered);
+ QSignalSpy menuShownSpy(&sub, &QMenu::aboutToShow);
+ QSignalSpy menuHiddenSpy(&sub, &QMenu::aboutToHide);
QVERIFY(QTest::qWaitForWindowExposed(&menu));
+ QWindow *menuWindow = menu.windowHandle();
+ QVERIFY(menuWindow);
//go over the submenu, press, move and release over the top level action
//this opens the submenu, move two times to emulate user interaction (d->motions > 0 in QMenu)
- QTest::mouseMove(&menu, menu.rect().center() + QPoint(0,2));
- QTest::mouseMove(&menu, menu.rect().center() + QPoint(1,3), 60);
+ QTest::mouseMove(menuWindow, menu.rect().center() + QPoint(0,2));
+ QTest::mouseMove(menuWindow, menu.rect().center() + QPoint(1,3), 60);
QVERIFY(menuShownSpy.wait());
QVERIFY(sub.isVisible());
QVERIFY(QTest::qWaitForWindowExposed(&sub));
//press over the submenu entry
- QTest::mousePress(&menu, Qt::LeftButton, 0, menu.rect().center() + QPoint(0,2), 300);
+ QTest::mousePress(menuWindow, Qt::LeftButton, 0, menu.rect().center() + QPoint(0,2), 300);
//move over the main action
- QTest::mouseMove(&menu, menu.rect().center() - QPoint(0,2));
+ QTest::mouseMove(menuWindow, menu.rect().center() - QPoint(0,2));
QVERIFY(menuHiddenSpy.wait());
//the submenu must have been hidden for the bug to be triggered
QVERIFY(!sub.isVisible());
- QTest::mouseRelease(&menu, Qt::LeftButton, 0, menu.rect().center() - QPoint(0,2), 300);
+ QTest::mouseRelease(menuWindow, Qt::LeftButton, 0, menu.rect().center() - QPoint(0,2), 300);
QCOMPARE(spy.count(), 1);
}
#endif