X-Git-Url: https://git.madduck.net/etc/awesome.git/blobdiff_plain/98977a1888c57a00dbefcbf83c4e598daeab33aa..ebefc1e21d71c4b53e27e142cd199f3ec600da9c:/widgets/base.lua?ds=sidebyside diff --git a/widgets/base.lua b/widgets/base.lua index 88478b0..cd84e36 100644 --- a/widgets/base.lua +++ b/widgets/base.lua @@ -6,7 +6,9 @@ --]] -local helpers = require("lain.helpers") +local newtimer = require("lain.helpers").newtimer +local read_pipe = require("lain.helpers").read_pipe + local wibox = require("wibox") local setmetatable = setmetatable @@ -17,24 +19,22 @@ local setmetatable = setmetatable local function worker(args) local base = {} local args = args or {} - local timeout = args.timeout or 1 + local timeout = args.timeout or 5 local cmd = args.cmd or "" local settings = args.settings or function() end base.widget = wibox.widget.textbox('') - helpers.set_map(cmd, '') function base.update() - output = helpers.read_pipe(cmd) - - if helpers.get_map(cmd) ~= output then + output = read_pipe(cmd) + if output ~= base.prev then widget = base.widget settings() - helpers.set_map(cmd, output) + base.prev = output end end - helpers.newtimer(cmd, timeout, base.update) + newtimer(cmd, timeout, base.update) return setmetatable(base, { __index = base.widget }) end