before we get too crazy

This commit is contained in:
atagen 2026-02-25 14:53:38 +11:00
parent fe668b5b9e
commit 453d780695
21 changed files with 612 additions and 291 deletions

View file

@ -4,13 +4,12 @@ import "launcher" as Launcher
import "logout" as Logout
// singletons
import "title"
import "tags"
import "tags"
import "rice"
import Quickshell
import Quickshell.Wayland
import QtQuick
import QtQuick.Controls
ShellRoot {
@ -18,9 +17,10 @@ ShellRoot {
Variants {
model: Quickshell.screens
Scope {
id: screenScope
property var modelData
PanelWindow {
screen: modelData
screen: screenScope.modelData
id: bg
anchors {
top: true
@ -163,7 +163,6 @@ ShellRoot {
implicitHeight: 22
implicitWidth: (Tags.keys.length !== undefined) ? Tags.keys.length * 13 + 24 : 37;
// implicitWidth:.width + 24
color: "transparent"
Rectangle {

View file

@ -8,7 +8,8 @@ Singleton {
id: data
property var tags: ({})
property var keys: []
Timer {
Timer {
id: reconnectTimer
running: false
repeat: true
@ -43,37 +44,41 @@ Singleton {
return d;
};
let t = {};
for (const k of Object.keys(data.tags)) {
t[k] = Object.assign({}, data.tags[k]);
}
if (event.TagEmpty) {
data.tags = ensure(data.tags, event.TagEmpty);
data.tags[event.TagEmpty].occupied = false;
t = ensure(t, event.TagEmpty);
t[event.TagEmpty].occupied = false;
} else if (event.TagOccupied) {
data.tags = ensure(data.tags, event.TagOccupied);
data.tags[event.TagOccupied].occupied = true;
t = ensure(t, event.TagOccupied);
t[event.TagOccupied].occupied = true;
} else if (event.TagUrgent) {
data.tags = ensure(data.tags, event.TagUrgent);
data.tags[event.TagUrgent].urgent = true;
t = ensure(t, event.TagUrgent);
t[event.TagUrgent].urgent = true;
} else if (event.TagEnabled) {
data.tags = ensure(data.tags, event.TagEnabled);
data.tags[event.TagEnabled].enabled = true;
t = ensure(t, event.TagEnabled);
t[event.TagEnabled].enabled = true;
} else if (event.TagDisabled) {
data.tags = ensure(data.tags, event.TagDisabled);
data.tags[event.TagDisabled].enabled = false;
t = ensure(t, event.TagDisabled);
t[event.TagDisabled].enabled = false;
} else if (event.TagExclusive) {
data.tags = ensure(data.tags, event.TagExclusive);
for (const [k] of Object.keys(data.tags)) {
data.tags[k].enabled = false;
t = ensure(t, event.TagExclusive);
for (const k of Object.keys(t)) {
t[k].enabled = false;
}
data.tags[event.TagExclusive].enabled = true;
t[event.TagExclusive].enabled = true;
} else if (event.TagFullState) {
data["tags"] = event.TagFullState;
for (const [k, v] of Object.entries(data.tags)) {
data.tags[k].id = k;
t = event.TagFullState;
for (const k of Object.keys(t)) {
t[k].id = k;
}
}
data.keys = Object.keys(data.tags);
data.tagsChanged();
data.keysChanged();
data.tags = t;
data.keys = Object.keys(t);
}
}
}