summaryrefslogtreecommitdiff
path: root/services
diff options
context:
space:
mode:
author2 * r + 2 * t <61896496+soramanew@users.noreply.github.com>2025-07-09 22:55:51 +1000
committer2 * r + 2 * t <61896496+soramanew@users.noreply.github.com>2025-07-09 22:55:51 +1000
commit17812d03228b6cf149459cd935cbeecce54cb079 (patch)
tree15c0026245440ebc28eef40467832ac45d6b2615 /services
parentnotifs: fix shrink height (diff)
downloadcaelestia-shell-17812d03228b6cf149459cd935cbeecce54cb079.tar.gz
caelestia-shell-17812d03228b6cf149459cd935cbeecce54cb079.tar.bz2
caelestia-shell-17812d03228b6cf149459cd935cbeecce54cb079.zip
dashboard: sleep cava
Closes #201 Also allow hot updating visualiser bars config
Diffstat (limited to 'services')
-rw-r--r--services/Cava.qml17
1 files changed, 15 insertions, 2 deletions
diff --git a/services/Cava.qml b/services/Cava.qml
index 5053984..e7d3a63 100644
--- a/services/Cava.qml
+++ b/services/Cava.qml
@@ -3,16 +3,29 @@ pragma Singleton
import "root:/config"
import Quickshell
import Quickshell.Io
+import QtQuick
Singleton {
id: root
- property list<int> values
+ property list<int> values: Array(Config.dashboard.visualiserBars)
property int refCount
+ Connections {
+ target: Config.dashboard
+
+ function onVisualiserBarsChanged() {
+ root.values = Array(Config.dashboard.visualiserBars);
+ cavaProc.running = false;
+ cavaProc.running = true;
+ }
+ }
+
Process {
+ id: cavaProc
+
running: true
- command: ["sh", "-c", `printf '[general]\nframerate=60\nbars=${Config.dashboard.visualiserBars}\n[output]\nchannels=mono\nmethod=raw\nraw_target=/dev/stdout\ndata_format=ascii\nascii_max_range=100' | cava -p /dev/stdin`]
+ command: ["sh", "-c", `printf '[general]\nframerate=60\nbars=${Config.dashboard.visualiserBars}\nsleep_timer=3\n[output]\nchannels=mono\nmethod=raw\nraw_target=/dev/stdout\ndata_format=ascii\nascii_max_range=100' | cava -p /dev/stdin`]
stdout: SplitParser {
onRead: data => {
if (root.refCount)