| (defwidget bar [] |
| (centerbox :orientation "h" |
| (workspaces) |
| (music) |
| (sidestuff))) |
| |
| (defwidget sidestuff [] |
| (box :class "sidestuff" :orientation "h" :space-evenly false :halign "end" |
| (metric :label "🔊" |
| :value volume |
| :onchange "amixer -D pulse sset Master {}%") |
| (metric :label "ï¡š" |
| :value {EWW_RAM.used_mem_perc} |
| :onchange "") |
| (metric :label "💾" |
| :value {round((1 - (EWW_DISK["/"].free / EWW_DISK["/"].total)) * 100, 0)} |
| :onchange "") |
| time)) |
| |
| (defwidget workspaces [] |
| (box :class "workspaces" |
| :orientation "h" |
| :space-evenly true |
| :halign "start" |
| :spacing 10 |
| (button :onclick "wmctrl -s 0" 1) |
| (button :onclick "wmctrl -s 1" 2) |
| (button :onclick "wmctrl -s 2" 3) |
| (button :onclick "wmctrl -s 3" 4) |
| (button :onclick "wmctrl -s 4" 5) |
| (button :onclick "wmctrl -s 5" 6) |
| (button :onclick "wmctrl -s 6" 7) |
| (button :onclick "wmctrl -s 7" 8) |
| (button :onclick "wmctrl -s 8" 9))) |
| |
| (defwidget music [] |
| (box :class "music" |
| :orientation "h" |
| :space-evenly false |
| :halign "center" |
| {music != "" ? "🎵${music}" : ""})) |
| |
| |
| (defwidget metric [label value onchange] |
| (box :orientation "h" |
| :class "metric" |
| :space-evenly false |
| (box :class "label" label) |
| (scale :min 0 |
| :max 101 |
| :active {onchange != ""} |
| :value value |
| :onchange onchange))) |
| |
| |
| |
| (deflisten music :initial "" |
| "playerctl --follow metadata --format '{{ artist }} - {{ title }}' || true") |
| |
| (defpoll volume :interval "1s" |
| "scripts/getvol") |
| |
| (defpoll time :interval "10s" |
| "date '+%H:%M %b %d, %Y'") |
| |
| (defwindow bar |
| :monitor 0 |
| :windowtype "dock" |
| :geometry (geometry :x "0%" |
| :y "0%" |
| :width "90%" |
| :height "10px" |
| :anchor "top center") |
| :reserve (struts :side "top" :distance "4%") |
| (bar)) |