From 0bde0074685bd482badfeefabd1ff62d92b8b2af Mon Sep 17 00:00:00 2001 From: xeals Date: Tue, 15 Jan 2019 17:01:14 +1100 Subject: [PATCH] feat(sidebar): add volume widget --- module/sidebar.fnl | 55 +++++++++++++++++++++++++++++++++++++++------- 1 file changed, 47 insertions(+), 8 deletions(-) diff --git a/module/sidebar.fnl b/module/sidebar.fnl index 6edd6d6..c9de34b 100644 --- a/module/sidebar.fnl +++ b/module/sidebar.fnl @@ -36,11 +36,12 @@ (local sb-clock (textclock "%H\n%M")) (local sb-systray (doto (wibox.widget.systray) (: :set_base_size 24))) -;; (fn bat-markup [] -;; (let [[h m] (std.s-split _G.bat_now.time ":") -;; baticon "\u{f241}"] -;; (: _G.widget :set_markup -;; (.. baticon "\n" h "\n" m)))) + +(fn bat-hm [] + (let [[h m] (std.s-split _G.bat_now.time ":") + baticon "\u{f241}"] + (: _G.widget :set_markup + (.. baticon "\n" h "\n" m)))) (fn bat-icon [] ;; FA @@ -65,6 +66,42 @@ empty)] (: _G.widget :set_markup (markup.font "Typicons 28" icon)))) +(fn bat-markup [] + (bat-icon)) + +(fn pulse-icon [] + (let [icon {:muted "\u{e133}" + :low "\u{e135}" + :med "\u{e132}" + :high "\u{e134}"} + muted (= _G.volume_now.muted "yes") + vol (tonumber _G.volume_now.left) + icon (if muted icon.muted + (> vol 35) icon.high + (> vol 5) icon.med + icon.low)] + (: _G.widget :set_markup (markup.font "Typicons 24" icon)))) + +(fn pulse-icon+text [] + (let [icon {:muted "\u{e133}" + :low "\u{e135}" + :med "\u{e132}" + :high "\u{e134}"} + muted (= _G.volume_now.muted "yes") + vol (tonumber _G.volume_now.left) + icon (if muted icon.muted + (> vol 35) icon.high + (> vol 5) icon.med + icon.low) + s (if muted "" + (.. "\n" (tostring vol) "%"))] + (: _G.widget :set_markup + (.. (markup.font "Typicons 24" icon) + s)))) + +(fn pulse-markup [] + (pulse-icon)) + ;; TODO Plug/unplug notifications (local battery (lain.widget.bat @@ -72,8 +109,10 @@ :ac "ACAD" :notify "on" :n_perc [10 20] - :settings bat-icon})) -(local pulse (lain.widget.pulse)) + :settings bat-markup})) + +(local pulse (lain.widget.pulse + {:settings pulse-markup})) (fn draw-sidebar [s] (set s.sb (awful.wibar {:position beautiful.sidebar_position @@ -87,7 +126,7 @@ :layout wibox.layout.fixed.vertical} 2 nil 3 {1 (center battery.widget) - 2 pulse.widget + 2 (center pulse.widget) ;; 2 sb-systray 3 {1 (border {1 {1 (center sb-clock)