X-Git-Url: https://git.madduck.net/etc/awesome.git/blobdiff_plain/9adaa9fa3290cc1f522bd85ba878de39c5fbde2a..32eddd514f8ccc35eeaa128a441f6a47708e6a04:/widgets/net.lua?ds=sidebyside diff --git a/widgets/net.lua b/widgets/net.lua index 83ac6bf..0b19f0b 100644 --- a/widgets/net.lua +++ b/widgets/net.lua @@ -10,12 +10,8 @@ local helpers = require("lain.helpers") local naughty = require("naughty") local wibox = require("wibox") - -local shell = require("awful.util").shell - local string = { format = string.format, match = string.match } - local setmetatable = setmetatable -- Network infos @@ -35,11 +31,12 @@ local function worker(args) local settings = args.settings or function() end -- Compatibility with old API where iface was a string corresponding to 1 interface - net.iface = (args.iface and type(args.iface) == "string" and {args.iface}) or {} + net.iface = (args.iface and (type(args.iface) == "string" and {args.iface}) or + (type(args.iface) == "table" and args.iface)) or {} function net.get_device() - helpers.async(string.format("%s -c 'ip link show'", shell, device_cmd), function(ws) - ws = ws:match("(%w+): ") + helpers.async(string.format("ip link show", device_cmd), function(ws) + ws = ws:match("(%w+): ") net.iface = ws and { ws } or {} end) end @@ -120,9 +117,9 @@ local function worker(args) settings() end - helpers.newtimer(net.iface, timeout, update) + helpers.newtimer("network", timeout, update) - return net + return setmetatable(net, { __index = net.widget }) end return setmetatable({}, { __call = function(_, ...) return worker(...) end })