aboutsummaryrefslogtreecommitdiffstats
path: root/src/quicktemplates/qquickshortcutcontext.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/quicktemplates/qquickshortcutcontext.cpp')
-rw-r--r--src/quicktemplates/qquickshortcutcontext.cpp6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/quicktemplates/qquickshortcutcontext.cpp b/src/quicktemplates/qquickshortcutcontext.cpp
index 2d07eb44f9..7f04583fe4 100644
--- a/src/quicktemplates/qquickshortcutcontext.cpp
+++ b/src/quicktemplates/qquickshortcutcontext.cpp
@@ -57,8 +57,12 @@ bool QQuickShortcutContext::matcher(QObject *obj, Qt::ShortcutContext context)
// so that actions within it can grab shortcuts.
if (auto *menu = qobject_cast<QQuickMenu *>(popup)) {
auto parentMenu = QQuickMenuPrivate::get(menu)->parentMenu;
- while (!obj && parentMenu)
+ while (parentMenu) {
obj = parentMenu->window();
+ if (obj)
+ break;
+ parentMenu = QQuickMenuPrivate::get(parentMenu)->parentMenu;
+ }
}
}
break;