Fix monotonic percentage

master
RKBoss6 2025-06-25 20:32:09 -04:00 committed by GitHub
parent 1a84fdfd0d
commit 3b7a89c494
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
1 changed files with 28 additions and 12 deletions

View File

@ -1,4 +1,3 @@
(function() {
var settings = Object.assign(
require('Storage').readJSON("powermanager.default.json", true) || {},
@ -30,6 +29,8 @@
}
}
setInterval(save, saveEvery);
E.on("kill", ()=>{
@ -75,7 +76,8 @@
return result;
})(Bangle[functionName]);
}
/* exported functions */
let functions = {};
let wrapDeferred = ((o,t) => (a) => {
if (a == eval || typeof a == "string") {
return o.apply(this, arguments);
@ -131,14 +133,29 @@
handleCharging(Bangle.isCharging());
}
var savedBatPercent=E.getBattery();
if (settings.forceMonoPercentage){
var p = (E.getBattery()+E.getBattery()+E.getBattery()+E.getBattery())/4;
var op = E.getBattery;
var newPercent =Math.round((E.getBattery()+E.getBattery()+E.getBattery()+E.getBattery()+E.getBattery()+E.getBattery())/6);
E.getBattery = function() {
var current = Math.round((op()+op()+op()+op())/4);
if (Bangle.isCharging() && current > p) p = current;
if (!Bangle.isCharging() && current < p) p = current;
return Math.round(p);
var percentToReturn;
if(Bangle.isCharging()){
//only go up
if(newPercent>savedBatPercent){
percentToReturn=newPercent;
savedBatPercent=newPercent;
}else{
percentToReturn=savedBatPercent;
}
}else{
if(newPercent<savedBatPercent){
percentToReturn=newPercent;
savedBatPercent=newPercent;
}else{
percentToReturn=savedBatPercent;
}
}
return percentToReturn;
};
}
@ -163,4 +180,3 @@
});
}
})();