aboutsummaryrefslogtreecommitdiffstats
path: root/desktop/modules/status/test-statusctl.sh
diff options
context:
space:
mode:
authorDanilo M. <danix@danix.xyz>2026-10-15 11:25:50 +0200
committerDanilo M. <danix@danix.xyz>2026-10-15 11:25:50 +0200
commit98fc6036ee817a92810e060c80d48aa6a936a1ab (patch)
treee05b1b724463de10649180615ad32bb6094f84e0 /desktop/modules/status/test-statusctl.sh
parente22d2ccee82b829875fe343cf1be48975174b054 (diff)
downloadquickshell-98fc6036ee817a92810e060c80d48aa6a936a1ab.tar.gz
quickshell-98fc6036ee817a92810e060c80d48aa6a936a1ab.zip
feat(status): quiet mode mutes the Claude and opencode sounds
A new registry mode, status.quiet, with a row on the status page. Both tools will play their sounds through notify-sound, which asks statusctl and plays nothing while quiet is on, so their popups stay and only the sound goes. Presentation sets quiet and restores it afterwards, like dnd and nolock: a sound during a call or a game is what quiet is for. notify-sound ignores any argument it has no sound for, because the opencode notifier runs its command on every event, session_started and user_message included. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Diffstat (limited to 'desktop/modules/status/test-statusctl.sh')
-rwxr-xr-xdesktop/modules/status/test-statusctl.sh6
1 files changed, 6 insertions, 0 deletions
diff --git a/desktop/modules/status/test-statusctl.sh b/desktop/modules/status/test-statusctl.sh
index afe56d4..170101c 100755
--- a/desktop/modules/status/test-statusctl.sh
+++ b/desktop/modules/status/test-statusctl.sh
@@ -149,5 +149,11 @@ kill "$watcher5" 2>/dev/null
wait "$watcher5" 2>/dev/null
check "first write, created by link, redraws" "1" "$(grep -c '"class": *"gaming"' "$out5")"
+# quiet is a plain mode like dnd.
+"$ctl" quiet set 1
+check "quiet set 1" "1" "$("$ctl" quiet get)"
+"$ctl" quiet toggle
+check "quiet toggle from 1" "0" "$("$ctl" quiet get)"
+
printf '\n%d passed, %d failed\n' "$pass" "$fail"
[[ "$fail" -eq 0 ]]