import QtQuick import QtQuick.Layouts import Quickshell.Services.Niri import "." as M RowLayout { spacing: 4 Repeater { model: Niri.workspaces delegate: Rectangle { required property var modelData implicitWidth: 24 implicitHeight: 20 radius: 4 color: modelData.isFocused ? M.Theme.base0D : (modelData.isActive ? M.Theme.base03 : M.Theme.base02) Text { anchors.centerIn: parent text: modelData.idx ?? modelData.id color: modelData.isFocused ? M.Theme.base00 : M.Theme.base05 font.pixelSize: M.Theme.fontSize font.family: M.Theme.fontFamily } MouseArea { anchors.fill: parent onClicked: Niri.dispatch(["action", "focus-workspace", String(modelData.id)]) } } } }