aboutsummaryrefslogtreecommitdiff
path: root/roles/home/desktop/eww/panels/volume.yuck
diff options
context:
space:
mode:
Diffstat (limited to 'roles/home/desktop/eww/panels/volume.yuck')
-rw-r--r--roles/home/desktop/eww/panels/volume.yuck40
1 files changed, 40 insertions, 0 deletions
diff --git a/roles/home/desktop/eww/panels/volume.yuck b/roles/home/desktop/eww/panels/volume.yuck
new file mode 100644
index 0000000..0c342c3
--- /dev/null
+++ b/roles/home/desktop/eww/panels/volume.yuck
@@ -0,0 +1,40 @@
+(defwidget volume []
+ (box :class "volume panel"
+ :orientation "v"
+ :space-evenly false
+
+ (label :markup "<b>Volume</b>")
+
+ (box
+ :orientation "h"
+ :vexpand true
+
+ (box
+ :orientation "v"
+ :space-evenly false
+ :vexpand true
+
+ (scale
+ :orientation "v"
+ :flipped true
+ :value {sink-volume}
+ :max 101
+ :onchange `pactl set-sink-volume @DEFAULT_SINK@ {}%`
+ :vexpand true
+ )
+
+ {sink-volume + "%"}
+ )
+ )
+ )
+)
+
+(defpoll sink-volume
+ :interval "0.2s"
+ `pactl get-sink-volume @DEFAULT_SINK@ | head -n1 | awk '{print substr($5, 1, length($5)-1)}'`
+)
+
+;(defpoll source-volume
+; :interval "0.2s"
+; `pactl get-source-volume @DEFAULT_SOURCE@ | head -n1 | awk '{print substr($5, 1, length($5)-1)}'`
+;)