summaryrefslogtreecommitdiffstats
path: root/tests/auto/widgets
diff options
context:
space:
mode:
authorLiang Qi <liang.qi@qt.io>2017-10-23 09:24:00 +0200
committerLiang Qi <liang.qi@qt.io>2017-10-23 09:40:54 +0200
commit32f50225c4913de1af145ef2da9a11ffffac3ded (patch)
treec2ecd51223706f3ad1234af883af9fdf33d846a2 /tests/auto/widgets
parent88e6f8cff2974c46b1262f3a1a61e1440c664e0c (diff)
parent9c58dd15885d813aeb5d83d2869c0f3a3ee5fcfe (diff)
Merge remote-tracking branch 'origin/5.9' into 5.10
Conflicts: src/plugins/platforms/direct2d/direct2d.pro src/plugins/platforms/ios/qiosclipboard.mm src/plugins/platforms/windows/windows.pro Change-Id: Idffa03b3990bd642784f528821c5446b2e1008ef
Diffstat (limited to 'tests/auto/widgets')
-rw-r--r--tests/auto/widgets/widgets/qmenu/tst_qmenu.cpp28
1 files changed, 28 insertions, 0 deletions
diff --git a/tests/auto/widgets/widgets/qmenu/tst_qmenu.cpp b/tests/auto/widgets/widgets/qmenu/tst_qmenu.cpp
index da37a9a968..5247d02427 100644
--- a/tests/auto/widgets/widgets/qmenu/tst_qmenu.cpp
+++ b/tests/auto/widgets/widgets/qmenu/tst_qmenu.cpp
@@ -135,6 +135,7 @@ private slots:
void menuSize_Scrolling_data();
void menuSize_Scrolling();
void tearOffMenuNotDisplayed();
+ void QTBUG_61039_menu_shortcuts();
protected slots:
void onActivated(QAction*);
@@ -1644,5 +1645,32 @@ void tst_QMenu::tearOffMenuNotDisplayed()
QVERIFY(!torn->isVisible());
}
+void tst_QMenu::QTBUG_61039_menu_shortcuts()
+{
+ QAction *actionKamen = new QAction("Action Kamen");
+ actionKamen->setShortcut(QKeySequence(QLatin1String("K")));
+
+ QAction *actionJoe = new QAction("Action Joe");
+ actionJoe->setShortcut(QKeySequence(QLatin1String("Ctrl+J")));
+
+ QMenu menu;
+ menu.addAction(actionKamen);
+ menu.addAction(actionJoe);
+ QVERIFY(!menu.platformMenu());
+
+ QWidget widget;
+ widget.addAction(menu.menuAction());
+ widget.show();
+ QVERIFY(QTest::qWaitForWindowActive(&widget));
+
+ QSignalSpy actionKamenSpy(actionKamen, &QAction::triggered);
+ QTest::keyClick(&widget, Qt::Key_K);
+ QTRY_COMPARE(actionKamenSpy.count(), 1);
+
+ QSignalSpy actionJoeSpy(actionJoe, &QAction::triggered);
+ QTest::keyClick(&widget, Qt::Key_J, Qt::ControlModifier);
+ QTRY_COMPARE(actionJoeSpy.count(), 1);
+}
+
QTEST_MAIN(tst_QMenu)
#include "tst_qmenu.moc"