31 lines
1.4 KiB
Text
31 lines
1.4 KiB
Text
(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'
|
|
:tooltip "${jq(network_manager.interfaces, '.[] | "\\(.connection) (\\(.device)) \\n"', 'r')}"
|
|
: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 "nmcli device ${( interface.state == 'connected' ? 'down' : 'up' )} ${interface.device}"
|
|
:tooltip "${interface.connection} (${interface.device})"
|
|
{( interface.type == "wifi" ? "" : ( interface.type == "ethernet" ? "" : "" ))}
|
|
)
|
|
)
|
|
)
|
|
)
|
|
; (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"}
|
|
; "")))
|