diff options
| author | Danilo M. <danix@danix.xyz> | 2026-09-15 11:08:05 +0200 |
|---|---|---|
| committer | Danilo M. <danix@danix.xyz> | 2026-09-15 11:13:07 +0200 |
| commit | 5e42fd4e4bf32c5214183f54c3e6bcec847c94b8 (patch) | |
| tree | 51b500d07a41eceaea205ffc6a4388ee1d5d403b /window-switcher/Theme.qml | |
| parent | 6d17f34c8f245f8a317e83b5b02ef0f06c95a247 (diff) | |
| download | quickshell-5e42fd4e4bf32c5214183f54c3e6bcec847c94b8.tar.gz quickshell-5e42fd4e4bf32c5214183f54c3e6bcec847c94b8.zip | |
feat(desktop): add the status singleton with the dnd mode
Modes live as files under XDG_RUNTIME_DIR, one per mode, holding 0 or 1,
with a missing file meaning off. That directory is tmpfs, so a reboot
resets every mode and no cleanup code is needed.
FileView covers both directions: atomicWrites for the write, watchChanges
for the watch, so an external writer repaints the drawer with no polling.
Both are already the documented defaults in 0.3.1 and are set explicitly
anyway, because statusctl watches close_write,moved_to precisely because an
atomic write lands as a rename. A future release flipping either default
would break the watcher with no error, and a declaration is a stronger
guarantee than a default.
The documented behaviour is that a FileView fires its own fileChanged on
setText, so the reparse compares before assigning and a self-write is a
no-op rather than a loop. That has not been observed running yet: nothing
consumes the singleton until the status module exists, so the guard stays
unproven until then.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01A7ThHHh5iTYbVfp3rNAkw2
Diffstat (limited to 'window-switcher/Theme.qml')
0 files changed, 0 insertions, 0 deletions
