X-Git-Url: https://git.madduck.net/etc/awesome.git/blobdiff_plain/a00417d8011690d977cbdab1f1378ec369e5f355..58b2a122dd20cc4d1d15a29a27e618c9c88050cc:/widgets/maildir.lua?ds=sidebyside diff --git a/widgets/maildir.lua b/widgets/maildir.lua index 1f4cd45..7e7b246 100644 --- a/widgets/maildir.lua +++ b/widgets/maildir.lua @@ -18,7 +18,7 @@ local setmetatable = setmetatable -- Maildir check (synchronous) -- lain.widgets.maildir -local maildir = {} +local maildir = helpers.make_widget_textbox() local function worker(args) local args = args or {} @@ -26,12 +26,10 @@ local function worker(args) local mailpath = args.mailpath or os.getenv("HOME") .. "/Mail" local ignore_boxes = args.ignore_boxes or {} local settings = args.settings or function() end - local ext_mail_cmd = args.external_mail_cmd - - maildir.widget = wibox.widget.textbox() + local cmd = args.cmd function maildir.update() - if ext_mail_cmd then awful.spawn(ext_mail_cmd) end + if cmd then helpers.async({ awful.util.shell, "-c", cmd }, function() end) end -- Find pathes to mailboxes. local p = io.popen(string.format("find %s -mindepth 1 -maxdepth 2 -type d -not -name .git", mailpath)) @@ -78,7 +76,7 @@ local function worker(args) maildir.timer = helpers.newtimer(mailpath, timeout, maildir.update, true, true) - return setmetatable(maildir, { __index = maildir.widget }) + return maildir end return setmetatable(maildir, { __call = function(_, ...) return worker(...) end })