TrayMenu wrapped in NPanel: clicking outside closes the menu (and panel)

This commit is contained in:
quadbyte 2025-08-11 10:44:16 -04:00
parent 880d6610fe
commit 690fa9674e

View file

@ -97,6 +97,7 @@ Item {
const menuY = (Style.barHeight * scaling) const menuY = (Style.barHeight * scaling)
trayMenu.menu = modelData.menu trayMenu.menu = modelData.menu
trayMenu.showAt(parent, menuX, menuY) trayMenu.showAt(parent, menuX, menuY)
trayPanel.show()
} else { } else {
console.log("Tray: no menu available for", modelData.id, "or trayMenu not set") console.log("Tray: no menu available for", modelData.id, "or trayMenu not set")
@ -116,8 +117,20 @@ Item {
} }
} }
// Attached TrayMenu // Attached TrayMenu drop down
TrayMenu { NPanel {
id: trayMenu id: trayPanel
showOverlay: false // no colors overlay even if activated in settings
Connections {
target: trayPanel
ignoreUnknownSignals: true
function onDismissed() {
trayPanel.visible = false
trayMenu.hideMenu()
}
}
TrayMenu {
id: trayMenu
}
} }
} }