diff options
Diffstat (limited to 'tests/auto/qmenubar/tst_qmenubar.cpp')
-rw-r--r-- | tests/auto/qmenubar/tst_qmenubar.cpp | 22 |
1 files changed, 12 insertions, 10 deletions
diff --git a/tests/auto/qmenubar/tst_qmenubar.cpp b/tests/auto/qmenubar/tst_qmenubar.cpp index 1245de1..3ccd0c8 100644 --- a/tests/auto/qmenubar/tst_qmenubar.cpp +++ b/tests/auto/qmenubar/tst_qmenubar.cpp @@ -59,6 +59,8 @@ #include <qobject.h> +#include "../../shared/util.h" + QT_FORWARD_DECLARE_CLASS(QMainWindow) #include <qmenubar.h> @@ -1527,6 +1529,7 @@ void tst_QMenuBar::task223138_triggered() void tst_QMenuBar::task256322_highlight() { QMainWindow win; + win.menuBar()->setNativeMenuBar(false); //we can't check the geometry of native menubars QMenu menu; QAction *file = win.menuBar()->addMenu(&menu); file->setText("file"); @@ -1536,27 +1539,24 @@ void tst_QMenuBar::task256322_highlight() QAction *nothing = win.menuBar()->addAction("nothing"); win.show(); + QTest::qWait(200); + QTest::mouseMove(win.menuBar(), win.menuBar()->actionGeometry(file).center()); QTest::mouseClick(win.menuBar(), Qt::LeftButton, 0, win.menuBar()->actionGeometry(file).center()); - QVERIFY(menu.isVisible()); + QTRY_VERIFY(menu.isVisible()); QVERIFY(!menu2.isVisible()); QCOMPARE(win.menuBar()->activeAction(), file); QTest::mouseMove(win.menuBar(), win.menuBar()->actionGeometry(file2).center()); - QVERIFY(!menu.isVisible()); + QTRY_VERIFY(!menu.isVisible()); QVERIFY(menu2.isVisible()); QCOMPARE(win.menuBar()->activeAction(), file2); - QTest::mouseMove(win.menuBar(), win.menuBar()->actionGeometry(nothing).center()); + QPoint nothingCenter = win.menuBar()->actionGeometry(nothing).center(); + QTest::mouseMove(win.menuBar(), nothingCenter); + QTRY_VERIFY(!menu2.isVisible()); QVERIFY(!menu.isVisible()); - QVERIFY(!menu2.isVisible()); QCOMPARE(win.menuBar()->activeAction(), nothing); - - QTest::mouseMove(&win, win.menuBar()->geometry().bottomLeft() + QPoint(1,1)); - - QVERIFY(!menu.isVisible()); - QVERIFY(!menu2.isVisible()); - QVERIFY(!win.menuBar()->activeAction()); } void tst_QMenuBar::menubarSizeHint() @@ -1583,6 +1583,8 @@ void tst_QMenuBar::menubarSizeHint() } style; QMenuBar mb; + mb.setNativeMenuBar(false); //we can't check the geometry of native menubars + mb.setStyle(&style); //this is a list of arbitrary strings so that we check the geometry QStringList list = QStringList() << "trer" << "ezrfgtgvqd" << "sdgzgzerzerzer" << "eerzertz" << "er"; |