widbattpwr: use `power_usage` module

pull/3498/head
Rob Pilling 2024-07-09 08:45:54 +01:00
parent bf3b572b9e
commit b4b4341728
4 changed files with 8 additions and 22 deletions

View File

@ -1 +1,2 @@
0.01: Initial fork from hwid_a_battery_widget
0.02: Use `power_usage` module

View File

@ -3,7 +3,7 @@
"name": "Battery power and percentage widget",
"shortName": "Batt Pwr",
"icon": "widget.png",
"version": "0.01",
"version": "0.02",
"type": "widget",
"supports": ["BANGLEJS2"],
"readme": "README.md",

View File

@ -20,13 +20,7 @@
function draw() {
var x = this.x;
var y = this.y;
var batt = E.getBattery();
var pwr = E.getPowerUsage();
var usage = 0;
for (var key in pwr.device) {
if (!/^(LCD|LED)/.test(key))
usage += pwr.device[key];
}
var _a = require("power_usage").get(), usage = _a.usage, hrsLeft = _a.hrsLeft, batt = _a.batt;
var pwrColour = powerColour(usage);
g.reset()
.setBgColor(g.theme.bg)
@ -43,9 +37,8 @@
txt = "".concat(batt, "%");
}
else {
var hrs = 175000 * batt / (100 * usage);
var days = hrs / 24;
txt = days >= 1 ? "".concat(Math.round(Math.min(days, 99)), "d") : "".concat(Math.round(hrs), "h");
var days = hrsLeft / 24;
txt = days >= 1 ? "".concat(Math.round(Math.min(days, 99)), "d") : "".concat(Math.round(hrsLeft), "h");
}
var txth = 14;
g.setColor(g.theme.fg);

View File

@ -22,13 +22,7 @@
let x = this.x!;
let y = this.y!;
const batt = E.getBattery();
const pwr = E.getPowerUsage();
let usage = 0;
for(const key in pwr.device){
if(!/^(LCD|LED)/.test(key))
usage += pwr.device[key];
}
const { usage, hrsLeft, batt } = require("power_usage").get();
const pwrColour = powerColour(usage);
g.reset()
@ -47,10 +41,8 @@
if(showPct){
txt = `${batt}%`;
}else{
// 175mAh, scaled based on battery (batt/100), scaled down based on usage
const hrs = 175000 * batt / (100 * usage);
const days = hrs / 24;
txt = days >= 1 ? `${Math.round(Math.min(days, 99))}d` : `${Math.round(hrs)}h`;
const days = hrsLeft / 24;
txt = days >= 1 ? `${Math.round(Math.min(days, 99))}d` : `${Math.round(hrsLeft)}h`;
}
// draw time remaining, then shade it based on batt %