diff --git a/.config/eww/eww.yuck b/.config/eww/eww.yuck index 55d5aba..ca34d43 100644 --- a/.config/eww/eww.yuck +++ b/.config/eww/eww.yuck @@ -1,52 +1,56 @@ +;; Variables +(defvar dtfull true) + ;; Listeners (deflisten active-workspace - `stdbuf -oL $HOME/.local/bin/scripts/eww-hyprland-active-workspace-listener`) + `stdbuf -oL $HOME/.local/bin/scripts/eww-hyprland-active-workspace-listener`) (deflisten workspace-list :initial '[1]' - `stdbuf -oL $HOME/.local/bin/scripts/eww-hyprland-workspace-list-listener`) + `stdbuf -oL $HOME/.local/bin/scripts/eww-hyprland-workspace-list-listener`) (deflisten datetime - `stdbuf -oL $HOME/.local/bin/scripts/eww-datetime-listener`) + `stdbuf -oL $HOME/.local/bin/scripts/eww-datetime-listener`) ;; Windows (defwindow bar - :monitor 0 - :stacking "fg" - :exclusive true - :geometry (geometry :width "100%" :height "28px" :anchor "top center") - (bar)) + :monitor 0 + :stacking "fg" + :exclusive true + :geometry (geometry :width "100%" :height "28px" :anchor "top center") + (bar)) (defwidget bar [] - (centerbox - (start) - (middle) - (end))) + (centerbox + (start) + (middle) + (end))) (defwidget start [] - (workspaces)) + (workspaces)) (defwidget middle [] - (label :text "test")) + (label :text "test")) (defwidget end [] - (box :halign "end" - :class "end" - :space-evenly false - (clock))) + (box :halign "end" + :class "end" + :space-evenly false + (clock))) (defwidget workspaces [] - (box :class "workspaces" - :space-evenly false - (for id in workspace-list + (box :class "workspaces" + :space-evenly false + (for id in workspace-list (button :class {active-workspace == id ? "active" : ""} :onclick `hyprctl dispatch workspace ${id}` - id)))) + id)))) (defwidget clock [] - (pair :icon "a" :text {datetime.full})) + (eventbox :onclick `eww update dtfull=${!dtfull}` + (label :text {dtfull ? datetime.full : datetime.date}))) (defwidget pair [icon text] - (box :width 70 - :space-evenly false - (label :text icon) - (label :text text))) + (box :width 70 + :space-evenly false + (label :text icon) + (label :text text)))