local lgi = require "lgi" local phosphor = require "assets.phosphor" local qcolor = require "quarrel.color" local qui = require "quarrel.ui" local wibox = require "wibox" local glib = lgi.GLib local wifi_icon = qui.icon { icon = phosphor.wifi_x_fill, color = qcolor.palette.red(), widget = { id = "icon", }, } local wifi = wibox.widget(qui.styled { widget = wibox.container.background, bg = qcolor.palette.bg.high, { widget = wibox.container.margin, margins = qui.BIG_PADDING, { { widget = wibox.container.place, valign = "center", halign = "center", wifi_icon, }, { widget = wibox.widget.textbox, text = "Disconnected", id = "essid", }, layout = wibox.layout.fixed.horizontal, spacing = qui.PADDING, }, }, }) awesome.connect_signal("services::wifi", function(essid, _, connected) if connected then wifi:get_children_by_id("essid")[1].text = essid else wifi:get_children_by_id("essid")[1].text = "Disconnected" end end) awesome.connect_signal("services::wifi::icon", function(icon, color) wifi_icon.image = icon wifi_icon.stylesheet = qui.recolor(color) end) return wifi