diff --git a/apps/clock_info/ChangeLog b/apps/clock_info/ChangeLog index 7d51e0da5..0081c49d4 100644 --- a/apps/clock_info/ChangeLog +++ b/apps/clock_info/ChangeLog @@ -1,2 +1,3 @@ 0.01: Moved from modules/clock_info.js 0.02: Fix settings page +0.03: Reported image for battery now reflects charge level \ No newline at end of file diff --git a/apps/clock_info/lib.js b/apps/clock_info/lib.js index 7251f1b00..e849be256 100644 --- a/apps/clock_info/lib.js +++ b/apps/clock_info/lib.js @@ -53,10 +53,17 @@ exports.load = function() { items: [ { name : "Battery", hasRange : true, - get : () => { let v = E.getBattery(); return { - text : v + "%", v : v, min:0, max:100, - img : atob(Bangle.isCharging() ? "GBiBAAABgAADwAAHwAAPgACfAAHOAAPkBgHwDwP4Hwf8Pg/+fB//OD//kD//wD//4D//8D//4B//QB/+AD/8AH/4APnwAHAAACAAAA==" : "GBiBAAAAAAAAAAAAAAAAAAAAAD//+P///IAAAr//Ar//Ar//A7//A7//A7//A7//Ar//AoAAAv///D//+AAAAAAAAAAAAAAAAAAAAA==") - }}, + get : () => { let v = E.getBattery(); + var img; + if (!Bangle.isCharging()) { + var s=24,g = Graphics.createArrayBuffer(24,24,1,{msb:true}); + g.fillRect(0,6,s-3,18).clearRect(2,8,s-5,16).fillRect(s-2,10,s,15).fillRect(3,9,3+v*(s-9)/100,15); + img = g.asImage("string"); + } else img=atob("GBiBAAABgAADwAAHwAAPgACfAAHOAAPkBgHwDwP4Hwf8Pg/+fB//OD//kD//wD//4D//8D//4B//QB/+AD/8AH/4APnwAHAAACAAAA=="); + return { + text : v + "%", v : v, min:0, max:100, img : img + } + }, show : function() { this.interval = setInterval(()=>this.emit('redraw'), 60000); Bangle.on("charging", batteryUpdateHandler); batteryUpdateHandler(); }, hide : function() { clearInterval(this.interval); delete this.interval; Bangle.removeListener("charging", batteryUpdateHandler); }, }, diff --git a/apps/clock_info/metadata.json b/apps/clock_info/metadata.json index 6cc3e1233..703cf9909 100644 --- a/apps/clock_info/metadata.json +++ b/apps/clock_info/metadata.json @@ -1,7 +1,7 @@ { "id": "clock_info", "name": "Clock Info Module", "shortName": "Clock Info", - "version":"0.02", + "version":"0.03", "description": "A library used by clocks to provide extra information on the clock face (Altitude, BPM, etc)", "icon": "app.png", "type": "module",