X-Git-Url: https://git.madduck.net/etc/awesome.git/blobdiff_plain/c0deea25035a845907210f2a913099343a16162e..08b9a76662135b39da0f8aed35aa78932e1b43da:/widgets/contrib/tpbat/init.lua?ds=sidebyside diff --git a/widgets/contrib/tpbat/init.lua b/widgets/contrib/tpbat/init.lua index 380625f..20a10f4 100644 --- a/widgets/contrib/tpbat/init.lua +++ b/widgets/contrib/tpbat/init.lua @@ -19,19 +19,16 @@ local newtimer = require("lain.helpers").newtimer local first_line = require("lain.helpers").first_line local naughty = require("naughty") local wibox = require("wibox") - local string = { format = string.format } local math = { floor = math.floor } local tostring = tostring local setmetatable = setmetatable - package.path = debug.getinfo(1,"S").source:match[[^@?(.*[\/])[^\/]-$]] .. "?.lua;" .. package.path local smapi = require("smapi") -- ThinkPad SMAPI-enabled battery info widget -- lain.widgets.contrib.tpbat -local tpbat = { } -local tpbat_notification = nil +local tpbat = {} function tpbat.hide() if not tpbat.notification then return end @@ -42,7 +39,7 @@ end function tpbat.show(t_out) tpbat.hide() - local bat = self.bat + local bat = tpbat.bat if bat == nil or not bat:installed() then return end @@ -54,10 +51,8 @@ function tpbat.show(t_out) local time = bat:remaining_time() local msg = "\t" - if status ~= "idle" and status ~= "nil" - then - if time == "N/A" - then + if status ~= "idle" and status ~= "nil" then + if time == "N/A" then msg = "...Calculating time remaining..." else msg = time .. (status == "charging" and " until charged" or " remaining") @@ -69,11 +64,10 @@ function tpbat.show(t_out) local str = string.format("%s : %s %s (%s)\n", bat.name, mfgr, model, chem) .. string.format("\n%s \t\t\t %s", status:upper(), msg) - tpbat_notification = naughty.notify({ - preset = naughty.config.defaults, - text = str, + tpbat.notification = naughty.notify({ + text = str, timeout = t_out, - screen = client.focus and client.focus.screen or 1 + screen = client.focus and client.focus.screen or 1 }) end @@ -86,7 +80,7 @@ function tpbat.register(args) tpbat.bat = smapi:battery(battery) -- Create a new battery local bat = tpbat.bat - tpbat.widget = wibox.widget.textbox('') + tpbat.widget = wibox.widget.textbox() bat_notification_low_preset = { title = "Battery low", @@ -114,7 +108,7 @@ function tpbat.register(args) }) end - function update() + function tpbat.update() bat_now = { status = "Not present", perc = "N/A", @@ -153,15 +147,16 @@ function tpbat.register(args) end widget = tpbat.widget + settings() end - newtimer("tpbat-" .. bat.name, timeout, update) + newtimer("tpbat-" .. bat.name, timeout, tpbat.update) widget:connect_signal('mouse::enter', function () tpbat.show() end) widget:connect_signal('mouse::leave', function () tpbat.hide() end) - return tpbat.widget + return tpbat end return setmetatable(tpbat, { __call = function(_, ...) return tpbat.register(...) end })