61 lines
1.6 KiB
Lua
61 lines
1.6 KiB
Lua
local awful = require "awful"
|
|
local xresources = require "beautiful.xresources"
|
|
local dpi = xresources.apply_dpi
|
|
local vars = require "themes.prismite.vars"
|
|
local wibox = require "wibox"
|
|
|
|
local wifi_inner = awful.widget.watch("awk 'NR==3 {printf(\"%.0f\", $3*10/7)}' /proc/net/wireless", 1, function(widget, stdout)
|
|
widget.font = "DejaVu Sans Mono wifi ramp Normal 8"
|
|
local icon = ""
|
|
local color = vars.colors.red
|
|
|
|
if stdout == "" then
|
|
widget:set_markup("<span color=\"" .. color .. "\">" .. icon .. "</span>")
|
|
return
|
|
end
|
|
|
|
local percent = tonumber(stdout)
|
|
|
|
if percent <= 20 then
|
|
icon = ""
|
|
color = vars.colors.red
|
|
elseif percent <= 40 then
|
|
icon = ""
|
|
color = vars.colors.yellow
|
|
elseif percent <= 60 then
|
|
icon = ""
|
|
color = vars.colors.yellow
|
|
elseif percent <= 80 then
|
|
icon = ""
|
|
color = vars.colors.green
|
|
elseif percent <= 100 then
|
|
icon = ""
|
|
color = vars.colors.green
|
|
end
|
|
|
|
|
|
widget:set_markup("<span color=\"" .. color .. "\">" .. icon .. "</span>")
|
|
end)
|
|
|
|
local wifi = wibox.widget {
|
|
widget = wibox.container.place,
|
|
wifi_inner
|
|
}
|
|
|
|
awful.tooltip {
|
|
objects = { wifi },
|
|
timer_function = function()
|
|
return io.popen("iwgetid -r"):read("*a"):sub(0, -2)
|
|
end,
|
|
bg = vars.colors.bg,
|
|
fg = vars.colors.fg,
|
|
border_color = vars.colors.bright.black,
|
|
border_width = vars.border_width,
|
|
font = vars.font,
|
|
shape = vars.shape,
|
|
margin_leftright = dpi(6),
|
|
margin_topbottom = dpi(6)
|
|
}
|
|
|
|
return wifi
|