close previous menu when opening new one
This commit is contained in:
parent
e7abfebe49
commit
67e8a27b3d
1 changed files with 8 additions and 1 deletions
|
|
@ -9,6 +9,7 @@ RowLayout {
|
||||||
spacing: M.Theme.moduleSpacing + 2
|
spacing: M.Theme.moduleSpacing + 2
|
||||||
|
|
||||||
required property var bar
|
required property var bar
|
||||||
|
property var _activeMenu: null
|
||||||
|
|
||||||
Repeater {
|
Repeater {
|
||||||
model: SystemTray.items
|
model: SystemTray.items
|
||||||
|
|
@ -48,7 +49,10 @@ RowLayout {
|
||||||
iconItem.modelData.activate();
|
iconItem.modelData.activate();
|
||||||
} else if (mouse.button === Qt.RightButton) {
|
} else if (mouse.button === Qt.RightButton) {
|
||||||
if (iconItem.modelData.menu) {
|
if (iconItem.modelData.menu) {
|
||||||
|
if (root._activeMenu && root._activeMenu !== menuLoader)
|
||||||
|
root._activeMenu.active = false;
|
||||||
menuLoader.active = true;
|
menuLoader.active = true;
|
||||||
|
root._activeMenu = menuLoader;
|
||||||
} else {
|
} else {
|
||||||
iconItem.modelData.secondaryActivate();
|
iconItem.modelData.secondaryActivate();
|
||||||
}
|
}
|
||||||
|
|
@ -64,7 +68,10 @@ RowLayout {
|
||||||
handle: iconItem.modelData.menu
|
handle: iconItem.modelData.menu
|
||||||
screen: root.bar.screen
|
screen: root.bar.screen
|
||||||
anchorX: iconItem.mapToGlobal(iconItem.width / 2, 0).x
|
anchorX: iconItem.mapToGlobal(iconItem.width / 2, 0).x
|
||||||
onMenuClosed: menuLoader.active = false
|
onMenuClosed: {
|
||||||
|
menuLoader.active = false;
|
||||||
|
root._activeMenu = null;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue