#199 #203 fix attempt 2

This commit is contained in:
copycat-killer 2016-06-13 09:08:05 +02:00
parent f76940230a
commit 610bc1991a
2 changed files with 24 additions and 20 deletions

View File

@ -50,7 +50,7 @@ local function worker(args)
} }
bat_now = { bat_now = {
status = "Not present", status = "N/A",
ac_status = "N/A", ac_status = "N/A",
perc = "N/A", perc = "N/A",
time = "N/A", time = "N/A",
@ -59,7 +59,7 @@ local function worker(args)
bat_now.n_status = {} bat_now.n_status = {}
for i = 1, #batteries do for i = 1, #batteries do
bat_now.n_status[i] = "Not present" bat_now.n_status[i] = "N/A"
end end
function update() function update()
@ -104,11 +104,11 @@ local function worker(args)
end end
bat_now.status = bat_now.n_status[1] bat_now.status = bat_now.n_status[1]
bat_now.ac_status = first_line(string.format("/sys/class/power_supply/%s/online", ac)) or "N/A" bat_now.ac_status = tonumber(first_line(string.format("/sys/class/power_supply/%s/online", ac))) or "N/A"
if bat_now.status ~= "N/A" then
-- update {perc,time,watt} iff battery not full and rate > 0 -- update {perc,time,watt} iff battery not full and rate > 0
if bat_now.status ~= "Full" and (sum_rate_current > 0 or sum_rate_power > 0) if bat_now.status ~= "Full" and (sum_rate_current > 0 or sum_rate_power > 0) then
then
local rate_time = 0 local rate_time = 0
if bat_now.status == "Charging" then if bat_now.status == "Charging" then
@ -119,11 +119,15 @@ local function worker(args)
local hours = math.floor(rate_time) local hours = math.floor(rate_time)
local minutes = math.floor((rate_time - hours) * 60) local minutes = math.floor((rate_time - hours) * 60)
local watt = sum_rate_power / 1e6 local watt = (sum_rate_power / 1e6)
bat_now.perc = tonumber(string.format("%d", math.min(100, sum_energy_percentage / #batteries))) bat_now.perc = tonumber(string.format("%d", math.min(100, sum_energy_percentage / #batteries)))
bat_now.time = string.format("%02d:%02d", hours, minutes) bat_now.time = string.format("%02d:%02d", hours, minutes)
bat_now.watt = tonumber(string.format("%.2fW", watt)) bat_now.watt = tonumber(string.format("%.2f", watt))
-- consistency check
elseif bat_now.status == "Full" then
bat_now.perc = 100
end
end end
widget = bat.widget widget = bat.widget

2
wiki

@ -1 +1 @@
Subproject commit 792e2e940ad8b42f13b9d4875fad24fceba62be5 Subproject commit f7076d287c5bf0cb0672969cba0520fd03c7bc7d