mirror of https://github.com/lcpz/lain.git
thinkpad bat widget integrated
This commit is contained in:
parent
356705836a
commit
22fa9400bc
|
@ -4,7 +4,7 @@
|
|||
Lain
|
||||
Layouts, widgets and utilities for Awesome WM
|
||||
|
||||
User contributed widgets section
|
||||
Users contributed widgets section
|
||||
|
||||
Licensed under GNU General Public License v2
|
||||
* (c) 2013, Luke Bonham
|
||||
|
|
|
@ -1,4 +1,6 @@
|
|||
|
||||
--[[
|
||||
|
||||
tpbat.lua
|
||||
Battery status widget for ThinkPad laptops that use SMAPI
|
||||
lain.widgets.contrib.tpbat
|
||||
|
@ -12,21 +14,24 @@
|
|||
|
||||
--]]
|
||||
|
||||
local debug = { getinfo = debug.getinfo }
|
||||
local newtimer = require("lain.helpers").newtimer
|
||||
local first_line = require("lain.helpers").first_line
|
||||
local beautiful = require("beautiful")
|
||||
local naughty = require("naughty")
|
||||
local wibox = require("wibox")
|
||||
local smapi = require("lain.widgets.contrib.tpbat.smapi") -- Ugly :(
|
||||
|
||||
local string = { format = string.format }
|
||||
local math = { floor = math.floor }
|
||||
local tostring = tostring
|
||||
local setmetatable = setmetatable
|
||||
|
||||
-- ThinkPad SMAPI-enabled battery info widget
|
||||
local tpbat = { }
|
||||
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
|
||||
|
||||
function tpbat:hide()
|
||||
|
@ -41,6 +46,8 @@ function tpbat:show(t_out)
|
|||
tpbat:hide()
|
||||
|
||||
local bat = self.bat
|
||||
local t_out = t_out or 0
|
||||
|
||||
if bat == nil or not bat:installed() then return end
|
||||
|
||||
local mfgr = bat:get('manufacturer') or "no_mfgr"
|
||||
|
@ -63,7 +70,7 @@ function tpbat:show(t_out)
|
|||
end
|
||||
|
||||
local str = string.format("%s : %s %s (%s)\n", bat.name, mfgr, model, chem)
|
||||
str = str .. string.format("\n%s \t\t\t %s", status:upper(), msg)
|
||||
.. string.format("\n%s \t\t\t %s", status:upper(), msg)
|
||||
|
||||
tpbat_notification = naughty.notify({
|
||||
preset = { fg = beautiful.fg_normal },
|
||||
|
@ -141,13 +148,13 @@ function tpbat.register(args)
|
|||
bat_now.perc = tostring(bat_now.perc)
|
||||
end
|
||||
|
||||
widget = tpbat.widget -- 'widget' needed in rc.lua (following convention)
|
||||
widget = tpbat.widget
|
||||
settings()
|
||||
end
|
||||
|
||||
newtimer("tpbat", timeout, update)
|
||||
|
||||
widget:connect_signal('mouse::enter', function () tpbat:show(0) end)
|
||||
widget:connect_signal('mouse::enter', function () tpbat:show() end)
|
||||
widget:connect_signal('mouse::leave', function () tpbat:hide() end)
|
||||
|
||||
return tpbat.widget
|
||||
|
|
|
@ -1,4 +1,6 @@
|
|||
|
||||
--[[
|
||||
|
||||
smapi.lua
|
||||
Interface with thinkpad battery information
|
||||
|
||||
|
|
Loading…
Reference in New Issue