diff options
Diffstat (limited to 'modules/bar/components/workspaces/SpecialWorkspaces.qml')
| -rw-r--r-- | modules/bar/components/workspaces/SpecialWorkspaces.qml | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/modules/bar/components/workspaces/SpecialWorkspaces.qml b/modules/bar/components/workspaces/SpecialWorkspaces.qml index 7ed4515..fb31257 100644 --- a/modules/bar/components/workspaces/SpecialWorkspaces.qml +++ b/modules/bar/components/workspaces/SpecialWorkspaces.qml @@ -120,6 +120,7 @@ Item { required property HyprlandWorkspace modelData readonly property int size: label.Layout.preferredHeight + (hasWindows ? windows.implicitHeight + Appearance.padding.small : 0) + property int wsId property string icon property bool hasWindows @@ -129,6 +130,7 @@ Item { spacing: 0 Component.onCompleted: { + wsId = modelData.id; icon = Icons.getSpecialWsIcon(modelData.name); hasWindows = Config.bar.workspaces.showWindows && modelData.lastIpcObject.windows > 0; } @@ -137,6 +139,11 @@ Item { Connections { target: ws.modelData + function onIdChanged(): void { + if (ws.modelData) + ws.wsId = ws.modelData.id; + } + function onNameChanged(): void { if (ws.modelData) ws.icon = Icons.getSpecialWsIcon(ws.modelData.name); @@ -222,7 +229,7 @@ Item { Repeater { model: ScriptModel { - values: Hyprland.toplevels.values.filter(c => c.workspace?.id === ws.modelData.id) + values: Hyprland.toplevels.values.filter(c => c.workspace?.id === ws.wsId) } MaterialIcon { |