aboutsummaryrefslogtreecommitdiffstats
path: root/shared/Status.qml
diff options
context:
space:
mode:
authorDanilo M. <danix@danix.xyz>2026-09-15 12:29:42 +0200
committerDanilo M. <danix@danix.xyz>2026-09-15 12:29:42 +0200
commit661d477e7806d322d3499c19537541c5dd4e7d82 (patch)
treeb23199038db02f9bdbc9c4d91eb467b8d35b7e8f /shared/Status.qml
parentfceeb5dc23c5e5a951f725e7682eab6814191c47 (diff)
downloadquickshell-661d477e7806d322d3499c19537541c5dd4e7d82.tar.gz
quickshell-661d477e7806d322d3499c19537541c5dd4e7d82.zip
fix(status): address final review findings
F1: after a click the shared Switch writes checked directly, dropping StatusRow's declarative binding, so an external mode change from waybar or statusctl no longer moved the switch. Resync via onValueChanged. F2: the spec claimed hyprctl clients counts idle inhibitors, which is false for a layer-surface inhibitor; replace with the behavioral hypridle marker check. F3: README said the check covers both watch states; it exercises the activated report and the absent-file down report. F4: give breakProc an onExited check so a failed breaktimer.sh verb is visible instead of silent. F5: drop StatusTile's unused required st property and its injection. F6: comment the startup-order limit on dndBeforePresentation.
Diffstat (limited to 'shared/Status.qml')
-rw-r--r--shared/Status.qml12
1 files changed, 11 insertions, 1 deletions
diff --git a/shared/Status.qml b/shared/Status.qml
index 5df1847..8f80b9a 100644
--- a/shared/Status.qml
+++ b/shared/Status.qml
@@ -43,6 +43,10 @@ Singleton {
// presentation mode off restores it rather than clearing it. Held here
// rather than in a file: it is meaningful only while presentation mode is
// on, and presentation mode does not survive a reboot.
+ //
+ // Known limit: on a shell restart while presentation is already on,
+ // onPresentationChanged can run before the dnd FileView has loaded, so the
+ // recorded prior value depends on which file loads first.
property bool dndBeforePresentation: false
function setMode(name, on) {
@@ -80,7 +84,13 @@ Singleton {
// breaktimer owns its own state file; this only calls its verbs. Two
// writers on that file would race with its daemon loop, which rewrites it
// on every phase change.
- Process { id: breakProc }
+ Process {
+ id: breakProc
+ onExited: code => {
+ if (code !== 0)
+ console.warn("status: breaktimer.sh " + breakProc.command[1] + " exited " + code);
+ }
+ }
// Wayland idle inhibit. The compositor advertises
// zwp_idle_inhibit_manager_v1 and hypridle honours it, so no D-Bus path