(defvar reveal_network false) (defwidget network [] (revealer-on-hover :class "${reveal_network} networks" :revealvar reveal_network :revealvar-name "reveal_network" (button :onclick 'nm-connection-editor' :class "revealer-preview" ;${network_status.wifi || network_status.wired ? 'active' : 'inactive'}" "󰇧") (network_children :array "${network_manager.interfaces}"))) (defwidget network_children [array] (box :class "reveal-children" :orientation "h" :space-evenly false :halign "center" (for interface in array (button :onclick "" {( interface.type == "wifi" ? "" : "eth" )} ) ) ) ) ; (button :onclick {network_status.wifi ? 'scripts/bar/network-updown wifi down' : 'scripts/bar/network-updown wifi up'} ; :class {network_status.wifi ? "active" : "inactive"} ; "") ; (button :onclick {network_status.wired ? 'scripts/bar/network-updown ethernet down' : 'scripts/bar/network-updown ethernet up'} ; :class {network_status.wired ? "active" : "inactive"} ; "󰈀")))