From fb471f1023ab4991c124d0bc432028d95d7b7300 Mon Sep 17 00:00:00 2001 From: 2 * r + 2 * t <61896496+soramanew@users.noreply.github.com> Date: Sun, 4 May 2025 20:45:34 +1000 Subject: feat: audio osd --- services/Apps.qml | 2 -- services/Audio.qml | 25 +++++++++++++++++++++++++ 2 files changed, 25 insertions(+), 2 deletions(-) create mode 100644 services/Audio.qml (limited to 'services') diff --git a/services/Apps.qml b/services/Apps.qml index 453030d..f964be2 100644 --- a/services/Apps.qml +++ b/services/Apps.qml @@ -1,8 +1,6 @@ pragma Singleton import "root:/utils/scripts/fuzzysort.js" as Fuzzy -import "root:/widgets" -import "root:/config" import Quickshell import Quickshell.Io diff --git a/services/Audio.qml b/services/Audio.qml new file mode 100644 index 0000000..c91adbc --- /dev/null +++ b/services/Audio.qml @@ -0,0 +1,25 @@ +pragma Singleton + +import Quickshell +import Quickshell.Services.Pipewire + +Singleton { + id: root + + readonly property PwNode sink: Pipewire.defaultAudioSink + readonly property PwNode source: Pipewire.defaultAudioSource + + readonly property bool muted: sink?.audio?.muted ?? false + readonly property real volume: sink?.audio?.volume ?? 0 + + function setVolume(volume: real): void { + if (sink?.ready && sink?.audio) { + sink.audio.muted = false; + sink.audio.volume = volume; + } + } + + PwObjectTracker { + objects: [Pipewire.defaultAudioSink, Pipewire.defaultAudioSource] + } +} -- cgit v1.2.3-freya