simplify tray item

This commit is contained in:
Benjamin Palko 2025-10-27 19:32:07 -04:00
parent fe8261f7af
commit 3c3fe368bc
5 changed files with 52 additions and 55 deletions

View file

@ -0,0 +1,49 @@
pragma ComponentBehavior: Bound
import qs.components
import qs.config
import QtQuick
import QtQuick.Layouts
import Quickshell
import Quickshell.Widgets
StyledPopupWindow {
id: window
required property QsMenuOpener menuOpener
content: ColumnLayout {
spacing: 4
Repeater {
model: window.menuOpener.children.values
delegate: Loader {
id: loader
required property QsMenuEntry modelData
active: true
Component.onCompleted: {
console.log(modelData.text);
}
Layout.fillWidth: true
Layout.minimumWidth: 160
sourceComponent: modelData.isSeparator ? menuSeperator : menuItem
property Component menuSeperator: WrapperItem {
margin: 4
Rectangle {
implicitHeight: 2
color: Styling.theme.base200
}
}
property Component menuItem: StyledButton {
text: loader.modelData.text
onClicked: loader.modelData.triggered()
}
}
}
}
}