diff options
author | J-P Nurmi <jpnurmi@qt.io> | 2017-06-03 10:16:42 +0200 |
---|---|---|
committer | J-P Nurmi <jpnurmi@qt.io> | 2017-07-26 14:11:39 +0000 |
commit | 66faa149db5d7b0a31db98b792c5202b8f33bf8a (patch) | |
tree | 4f757ec3ddfe6ab344269c43aa9ae44200df2a98 /src/quicktemplates2/qquickshortcutcontext.cpp | |
parent | 9484e471324560ffd189ed7bd59ac182f0793b31 (diff) |
Introduce MenuBar
MenuBar is an ordinary Item. It can be located basically anywhere, but
the idea is to introduce a new ApplicationWindow::menuBar property in a
follow-up commit. Currently the example snippets are using the header
property.
[ChangeLog][Controls][MenuBar] Introduced a MenuBar control.
Task-number: QTBUG-60350
Change-Id: Ie66dc457a3d8edbe8362fab2a591dc49442c95e2
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
Diffstat (limited to 'src/quicktemplates2/qquickshortcutcontext.cpp')
-rw-r--r-- | src/quicktemplates2/qquickshortcutcontext.cpp | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/src/quicktemplates2/qquickshortcutcontext.cpp b/src/quicktemplates2/qquickshortcutcontext.cpp index 6553beb4..b44c723b 100644 --- a/src/quicktemplates2/qquickshortcutcontext.cpp +++ b/src/quicktemplates2/qquickshortcutcontext.cpp @@ -38,6 +38,8 @@ #include "qquickoverlay_p_p.h" #include "qquicktooltip_p.h" #include "qquickpopup_p.h" +#include "qquickmenu_p.h" +#include "qquickmenubaritem_p.h" #include <QtGui/qguiapplication.h> @@ -53,8 +55,13 @@ static bool isBlockedByPopup(QQuickItem *item) for (QQuickPopup *popup : popups) { if (qobject_cast<QQuickToolTip *>(popup)) continue; // ignore tooltips (QTBUG-60492) - if (popup->isModal() || popup->closePolicy() & QQuickPopup::CloseOnEscape) + if (popup->isModal() || popup->closePolicy() & QQuickPopup::CloseOnEscape) { + if (QQuickMenu *menu = qobject_cast<QQuickMenu *>(popup)) { + if (qobject_cast<QQuickMenuBarItem *>(menu->parentItem())) + continue; + } return item != popup->popupItem() && !popup->popupItem()->isAncestorOf(item); + } } return false; |