import Quickshell import Quickshell.Wayland import QtQuick import QtQuick.Layouts import qs.config // The panel. Anchored to the bottom edge on three sides, so the compositor // resizes it for us whenever the output geometry changes — including rotation, // mode changes and scale changes. Nothing here depends on a fixed width. PanelWindow { id: bar required property var modelData screen: bar.modelData WlrLayershell.layer: Config.layer WlrLayershell.namespace: Config.namespace anchors { left: true right: true bottom: true } implicitHeight: Theme.barHeight exclusionMode: Config.reserveSpace ? ExclusionMode.Auto : ExclusionMode.Ignore color: "transparent" Rectangle { anchors.fill: parent color: Theme.background Rectangle { anchors { left: parent.left right: parent.right top: parent.top } height: Theme.borderWidth color: Theme.border } RowLayout { anchors.fill: parent anchors.topMargin: Theme.borderWidth anchors.leftMargin: Theme.padding anchors.rightMargin: Theme.padding spacing: Theme.spacing AppMenu { bar: bar Layout.fillHeight: true } WindowList { bar: bar Layout.fillWidth: true Layout.fillHeight: true } WifiMenu { bar: bar Layout.fillHeight: true } BluetoothMenu { bar: bar Layout.fillHeight: true } PowerMenu { bar: bar Layout.fillHeight: true } } } }