summaryrefslogtreecommitdiffstats
path: root/tests/auto/widgets/widgets
diff options
context:
space:
mode:
authorFrederik Gladhorn <frederik.gladhorn@digia.com>2013-01-16 01:22:45 +0100
committerFrederik Gladhorn <frederik.gladhorn@digia.com>2013-01-16 01:22:45 +0100
commit7075e291998612a3c0a530bb37a515dd07739e28 (patch)
tree4e1992498d82ee3f6f92fd6d42754c92928dd581 /tests/auto/widgets/widgets
parent1161a8a62907796ea45b1877bec31e66aeef77f6 (diff)
parent3d9a40038f01bc2a3df0027a9be04e7fa3ce3850 (diff)
Merge remote-tracking branch 'origin/stable' into dev
Conflicts: src/widgets/styles/qstyleanimation.cpp Change-Id: Iae570895be6544de80f9c1ec309d1a08c59daff8
Diffstat (limited to 'tests/auto/widgets/widgets')
-rw-r--r--tests/auto/widgets/widgets/qmenu/tst_qmenu.cpp17
1 files changed, 17 insertions, 0 deletions
diff --git a/tests/auto/widgets/widgets/qmenu/tst_qmenu.cpp b/tests/auto/widgets/widgets/qmenu/tst_qmenu.cpp
index 4e5b82a712..9da1dd389a 100644
--- a/tests/auto/widgets/widgets/qmenu/tst_qmenu.cpp
+++ b/tests/auto/widgets/widgets/qmenu/tst_qmenu.cpp
@@ -101,6 +101,7 @@ private slots:
void pushButtonPopulateOnAboutToShow();
void QTBUG7907_submenus_autoselect();
void QTBUG7411_submenus_activate();
+ void QTBUG20403_nested_popup_on_shortcut_trigger();
void QTBUG_10735_crashWithDialog();
protected slots:
void onActivated(QAction*);
@@ -895,6 +896,22 @@ void tst_QMenu::QTBUG7411_submenus_activate()
QTRY_VERIFY(sub1.isVisible());
}
+void tst_QMenu::QTBUG20403_nested_popup_on_shortcut_trigger()
+{
+ QMenu menu("Test Menu");
+ QMenu sub1("&sub1");
+ QMenu subsub1("&subsub1");
+ subsub1.addAction("foo");
+ sub1.addMenu(&subsub1);
+ menu.addMenu(&sub1);
+ menu.show();
+ QVERIFY(QTest::qWaitForWindowExposed(&menu));
+ QTest::keyPress(&menu, Qt::Key_S);
+ QTest::qWait(100); // 20ms delay with previous behavior
+ QTRY_VERIFY(sub1.isVisible());
+ QVERIFY(!subsub1.isVisible());
+}
+
class MyMenu : public QMenu
{
Q_OBJECT