diff options
Diffstat (limited to 'src/controls/Menu.qml')
-rw-r--r-- | src/controls/Menu.qml | 17 |
1 files changed, 14 insertions, 3 deletions
diff --git a/src/controls/Menu.qml b/src/controls/Menu.qml index 48407488..5374a599 100644 --- a/src/controls/Menu.qml +++ b/src/controls/Menu.qml @@ -148,13 +148,24 @@ MenuPrivate { property int __currentIndex: -1 /*! \internal */ on__MenuClosed: __currentIndex = -1 + on__MenuPopupDestroyed: contentLoader.active = false + onPopupVisibleChanged: { + if (__popupVisible) + contentLoader.active = true + } /*! \internal */ __contentItem: Loader { - sourceComponent: MenuContentItem { - __menu: root + id: contentLoader + Component { + id: menuContent + MenuContentItem { + __menu: root + } } - active: !root.__isNative && root.__popupVisible + + sourceComponent: root.__isNative ? null : menuContent + active: false focus: true Keys.forwardTo: item ? [item, root.__parentContentItem] : [] property bool altPressed: root.__parentContentItem ? root.__parentContentItem.altPressed : false |