aboutsummaryrefslogtreecommitdiffstats
path: root/desktop/modules
diff options
context:
space:
mode:
authorDanilo M. <danix@danix.xyz>2026-09-18 17:26:49 +0200
committerDanilo M. <danix@danix.xyz>2026-09-18 17:26:49 +0200
commitc365d24ea8e7225efce6abb77a8aa9cd97c84a0d (patch)
treea587dc64d7058c6c2abee223db826835811367de /desktop/modules
parentfd2df91659d5156d6224e9b170dca3167603d18f (diff)
downloadquickshell-c365d24ea8e7225efce6abb77a8aa9cd97c84a0d.tar.gz
quickshell-c365d24ea8e7225efce6abb77a8aa9cd97c84a0d.zip
feat(status): show the breaktimer countdown on the tile
Below every mode in the priority chain, so an active mode still owns the line and breaktimer replaces only the idle 'All clear'. It does not count toward activeCount. A running breaktimer is not a mode the user switched on, and accenting the tile for an ordinary working day would read as a mode stuck on.
Diffstat (limited to 'desktop/modules')
-rw-r--r--desktop/modules/status/StatusTile.qml9
1 files changed, 8 insertions, 1 deletions
diff --git a/desktop/modules/status/StatusTile.qml b/desktop/modules/status/StatusTile.qml
index ab3a7af..cec18b6 100644
--- a/desktop/modules/status/StatusTile.qml
+++ b/desktop/modules/status/StatusTile.qml
@@ -17,8 +17,15 @@ Text {
elide: Text.ElideRight
font { family: Theme.fontFamily; pixelSize: Theme.fontSize - 4 }
color: Status.activeCount > 0 ? Theme.text : Theme.subtext
+ // Breaktimer sits below every mode, so an active mode still owns the line
+ // and breaktimer replaces only the idle "All clear". A stopped daemon
+ // falls through to it, which is true: nothing is being tracked.
text: Status.presentation ? "Presenting"
: Status.dnd ? "Do not disturb"
: Status.nolock ? "No lock"
- : "All clear"
+ : !Status.btRunning ? "All clear"
+ : Status.btPaused ? "Paused"
+ : (Status.btPhase === "breaking" || Status.btPhase === "longbreak")
+ ? "Back in " + Status.btCountdown()
+ : "Break in " + Status.btCountdown()
}