diff --git a/bar/Bar.qml b/bar/Bar.qml index 7c1785c..9c7f48d 100644 --- a/bar/Bar.qml +++ b/bar/Bar.qml @@ -39,6 +39,7 @@ PanelWindow { } HyprWorkspaces { + screen: root.screen Layout.fillWidth: false Layout.preferredHeight: parent.height Layout.margins: 4 @@ -98,7 +99,9 @@ PanelWindow { // screen: root // } - Widgets.Separator {} + Widgets.Separator { + Layout.leftMargin: 10 + } Clock { id: clock diff --git a/bar/HyprWorkspaces.qml b/bar/HyprWorkspaces.qml index 4347bfe..761b195 100644 --- a/bar/HyprWorkspaces.qml +++ b/bar/HyprWorkspaces.qml @@ -1,23 +1,23 @@ import QtQuick import QtQuick.Layouts +import Quickshell import Quickshell.Hyprland import ".." RowLayout { - property var sortedWorkspaces: { - let values = Hyprland.workspaces.values.slice(); - values.sort(function (a, b) { - return a.id - b.id; - }); - - return values; - } - spacing: 6 visible: Hyprland.monitors.values.length != 0 + required property var screen + Repeater { - model: parent.sortedWorkspaces + model: ScriptModel { + values: Hyprland.workspaces.values.slice().filter( + workspace => workspace.monitor === Hyprland.monitorFor(screen) + ).sort((a,b) => { + return a.id - b.id; + }); + } Rectangle { required property var modelData