From 5d28b946af797299de091ddb85953913ee490966 Mon Sep 17 00:00:00 2001 From: RKBoss6 Date: Sun, 2 Aug 2026 22:12:32 -0400 Subject: [PATCH 1/6] Added applebatt app --- apps/applebatt/ChangeLog | 1 + apps/applebatt/app.png | Bin 0 -> 7045 bytes apps/applebatt/metadata.json | 18 ++++++++++++++++++ apps/applebatt/screenshot1.png | Bin 0 -> 5185 bytes apps/applebatt/screenshot2.png | Bin 0 -> 5297 bytes apps/applebatt/widget.js | 29 +++++++++++++++++++++++++++++ 6 files changed, 48 insertions(+) create mode 100644 apps/applebatt/ChangeLog create mode 100644 apps/applebatt/app.png create mode 100644 apps/applebatt/metadata.json create mode 100644 apps/applebatt/screenshot1.png create mode 100644 apps/applebatt/screenshot2.png create mode 100644 apps/applebatt/widget.js diff --git a/apps/applebatt/ChangeLog b/apps/applebatt/ChangeLog new file mode 100644 index 00000000000..4c21f3ace36 --- /dev/null +++ b/apps/applebatt/ChangeLog @@ -0,0 +1 @@ +0.01: New Widget! diff --git a/apps/applebatt/app.png b/apps/applebatt/app.png new file mode 100644 index 0000000000000000000000000000000000000000..5fb343ecdd93b04d2b48b8d9527f8cb79e240dc8 GIT binary patch literal 7045 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 literal 0 HcmV?d00001 diff --git a/apps/applebatt/metadata.json b/apps/applebatt/metadata.json new file mode 100644 index 00000000000..f177e95da50 --- /dev/null +++ b/apps/applebatt/metadata.json @@ -0,0 +1,18 @@ +{ + "id": "applebatt", + "name": "Apple Battery Widget", + "shortName":"Apple Battery", + "icon": "app.png", + "version":"0.01", + "type": "widget", + "supports": ["BANGLEJS", "BANGLEJS2"], + "author": "RKBoss6", + "description": "A simple battery widget in the style of iOS devices' battery icons.", + "tags": "widget,battery", + "provides_widgets" : ["battery"], + "storage": [ + {"name":"applebatt.wid.js","url":"widget.js"} + ], + "screenshots": [{"url":"screenshot1.png"},{"url":"screenshot2.png"}] + +} diff --git a/apps/applebatt/screenshot1.png b/apps/applebatt/screenshot1.png new file mode 100644 index 0000000000000000000000000000000000000000..400187bd7420742f2ae92975f797973799a73e9d GIT binary patch literal 5185 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 literal 0 HcmV?d00001 diff --git a/apps/applebatt/screenshot2.png b/apps/applebatt/screenshot2.png new file mode 100644 index 0000000000000000000000000000000000000000..08e4581369a6ba72362c094fc97dffbd6bfc8a28 GIT binary patch literal 5297 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["applebatt"].draw(), intervalLow); + + WIDGETS["applebatt"]={area:"tr",width:32,draw:draw}; +})(); \ No newline at end of file From 264d0bf11056de301596dd1af6a72775ba5a77f2 Mon Sep 17 00:00:00 2001 From: RKBoss6 Date: Sun, 2 Aug 2026 23:31:37 -0400 Subject: [PATCH 2/6] Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> --- apps/applebatt/widget.js | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/apps/applebatt/widget.js b/apps/applebatt/widget.js index ffd7ae4eec2..46f1982b9b0 100644 --- a/apps/applebatt/widget.js +++ b/apps/applebatt/widget.js @@ -22,8 +22,8 @@ } - Bangle.on('charging',function(charging) { draw(); }); - var id = setInterval(()=>WIDGETS["applebatt"].draw(), intervalLow); + WIDGETS["applebatt"] = { area:"tr", width:32, draw:draw }; + Bangle.on('charging', () => WIDGETS["applebatt"].draw()); + var id = setInterval(() => WIDGETS["applebatt"].draw(), intervalLow); - WIDGETS["applebatt"]={area:"tr",width:32,draw:draw}; })(); \ No newline at end of file From 9c1e3d79efbec1decf21cd6e2d1ad4d2b0476acf Mon Sep 17 00:00:00 2001 From: RKBoss6 Date: Sun, 2 Aug 2026 23:32:29 -0400 Subject: [PATCH 3/6] Fix indentation in widget.js --- apps/applebatt/widget.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/apps/applebatt/widget.js b/apps/applebatt/widget.js index 46f1982b9b0..e2bb96b43f5 100644 --- a/apps/applebatt/widget.js +++ b/apps/applebatt/widget.js @@ -18,7 +18,7 @@ g.setFontAlign(0,0).setColor(g.theme.bg) g.setFont("14").drawString(l,x+2+(w/2),y+12) if (Bangle.isCharging()) changeInterval(id, intervalHigh); - else changeInterval(id, intervalLow); + else changeInterval(id, intervalLow); } @@ -26,4 +26,4 @@ Bangle.on('charging', () => WIDGETS["applebatt"].draw()); var id = setInterval(() => WIDGETS["applebatt"].draw(), intervalLow); -})(); \ No newline at end of file +})(); From 6cb202326f08749166306c7ad19b7c94158c4286 Mon Sep 17 00:00:00 2001 From: RKBoss6 Date: Mon, 3 Aug 2026 23:14:22 -0400 Subject: [PATCH 4/6] Added setting to show/hide percent value --- apps/applebatt/metadata.json | 10 +++++++--- apps/applebatt/screenshot3.png | Bin 0 -> 4994 bytes apps/applebatt/settings.js | 28 ++++++++++++++++++++++++++++ apps/applebatt/widget.js | 32 +++++++++++++++++--------------- 4 files changed, 52 insertions(+), 18 deletions(-) create mode 100644 apps/applebatt/screenshot3.png create mode 100644 apps/applebatt/settings.js diff --git a/apps/applebatt/metadata.json b/apps/applebatt/metadata.json index f177e95da50..8ee5ce2633d 100644 --- a/apps/applebatt/metadata.json +++ b/apps/applebatt/metadata.json @@ -7,12 +7,16 @@ "type": "widget", "supports": ["BANGLEJS", "BANGLEJS2"], "author": "RKBoss6", - "description": "A simple battery widget in the style of iOS devices' battery icons.", + "description": "A simple battery widget in the style of iOS devices' battery icons, with a setting to show or hide the percent text.", "tags": "widget,battery", "provides_widgets" : ["battery"], "storage": [ - {"name":"applebatt.wid.js","url":"widget.js"} + {"name":"applebatt.wid.js","url":"widget.js"}, + {"name":"applebatt.settings.js","url":"settings.js"} ], - "screenshots": [{"url":"screenshot1.png"},{"url":"screenshot2.png"}] + "data":[ + {"name":"applebatt.settings.json"} + ], + "screenshots": [{"url":"screenshot1.png"},{"url":"screenshot2.png"},{"url":"screenshot3.png"}] } diff --git a/apps/applebatt/screenshot3.png b/apps/applebatt/screenshot3.png new file mode 100644 index 0000000000000000000000000000000000000000..2d7b03df3a743aea0dbc2d348cc11a38e322ba41 GIT binary patch literal 4994 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 literal 0 HcmV?d00001 diff --git a/apps/applebatt/settings.js b/apps/applebatt/settings.js new file mode 100644 index 00000000000..5d08f9fd7c3 --- /dev/null +++ b/apps/applebatt/settings.js @@ -0,0 +1,28 @@ +(function(back) { + const FILE = "applebatt.settings.json"; + // Load settings + var settings = Object.assign({ + showPercent: true, + }, require('Storage').readJSON(FILE, true) || {}); + + function writeSettings() { + require('Storage').writeJSON(FILE, settings); + } + + + // Show the menu + E.showMenu({ + "" : { "title" : "Apple Battery" }, + "< Back" : () => back(), + 'Show Percent': { + value: !!settings.showPercent, // !! converts undefined to false + onchange: v => { + settings.showPercent = v; + writeSettings(); + if(WIDGETS["applebatt"]) WIDGETS["applebatt"].reload() + if(WIDGETS["applebatt"]) WIDGETS["applebatt"].draw() + + } + } + }); +}) \ No newline at end of file diff --git a/apps/applebatt/widget.js b/apps/applebatt/widget.js index e2bb96b43f5..7820e1c88ba 100644 --- a/apps/applebatt/widget.js +++ b/apps/applebatt/widget.js @@ -1,29 +1,31 @@ (function(){ const intervalLow = 120000; const intervalHigh = 30000; - - + var id; + let settings; + function reload() { + settings=require("Storage").readJSON("applebatt.settings.json")||{showPercent:true} + } function draw() { + g.reset("widget"); var x = this.x, y = this.y, w = this.width-5; const l = E.getBattery(); const lw=(w)*(l/100) - g.setColor("#808080"); g.fillRect({x:x+2,y:y+2,w:w,h:16,r:6}) let col=g.theme.fg if(l<20) col="#f00" if(Bangle.isCharging()) col="#0f0" - g.setColor(col); - g.fillRect({x:x+2,y:y+2,w:lw,h:16,r:6}) - g.setFontAlign(0,0).setColor(g.theme.bg) - g.setFont("14").drawString(l,x+2+(w/2),y+12) + g.setColor(col) + .fillRect({x:x+2,y:y+2,w:lw,h:16,r:6}) + .setFontAlign(0,0).setColor(g.theme.bg) + if(settings.showPercent) g.setFont("14").drawString(l,x+2+(w/2),y+12) if (Bangle.isCharging()) changeInterval(id, intervalHigh); - else changeInterval(id, intervalLow); + else changeInterval(id, intervalLow); } - - - WIDGETS["applebatt"] = { area:"tr", width:32, draw:draw }; - Bangle.on('charging', () => WIDGETS["applebatt"].draw()); - var id = setInterval(() => WIDGETS["applebatt"].draw(), intervalLow); - -})(); + reload() + Bangle.on('charging',function(charging) { draw(); }); + id = setInterval(()=>WIDGETS["applebatt"].draw(), intervalLow); + + WIDGETS["applebatt"]={area:"tr",width:32,draw:draw, reload:reload}; +})(); \ No newline at end of file From 16e99fc8a9275bf954be244bc41690be89932b60 Mon Sep 17 00:00:00 2001 From: RKBoss6 Date: Fri, 7 Aug 2026 12:13:34 -0400 Subject: [PATCH 5/6] Mask shape even when percentage is low --- apps/applebatt/widget.js | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/apps/applebatt/widget.js b/apps/applebatt/widget.js index 7820e1c88ba..d453c27a703 100644 --- a/apps/applebatt/widget.js +++ b/apps/applebatt/widget.js @@ -14,18 +14,24 @@ g.setColor("#808080"); g.fillRect({x:x+2,y:y+2,w:w,h:16,r:6}) let col=g.theme.fg - if(l<20) col="#f00" + if(l<25) col=g.theme.dark ? "#ff0" : "#FC6A03" + if(l<15) col="#f00" if(Bangle.isCharging()) col="#0f0" g.setColor(col) .fillRect({x:x+2,y:y+2,w:lw,h:16,r:6}) .setFontAlign(0,0).setColor(g.theme.bg) + .setColor(g.theme.bg) + .drawRect({x:x+1,y:y+1,w:w+2,h:16+2,r:6}) + .drawRect({x:x+0.5,y:y+1,w:w+3,h:16+2,r:6}) + .drawRect({x:x,y:y,w:w+4,h:16+4,r:6}) if(settings.showPercent) g.setFont("14").drawString(l,x+2+(w/2),y+12) if (Bangle.isCharging()) changeInterval(id, intervalHigh); else changeInterval(id, intervalLow); + } reload() Bangle.on('charging',function(charging) { draw(); }); id = setInterval(()=>WIDGETS["applebatt"].draw(), intervalLow); WIDGETS["applebatt"]={area:"tr",width:32,draw:draw, reload:reload}; -})(); \ No newline at end of file +})(); From 404f4fc3d7590abda24dfe257623dcc0fff6394b Mon Sep 17 00:00:00 2001 From: RKBoss6 Date: Fri, 7 Aug 2026 12:44:57 -0400 Subject: [PATCH 6/6] Rename to widapplebatt as id --- apps/{applebatt => widapplebatt}/ChangeLog | 0 apps/{applebatt => widapplebatt}/app.png | Bin apps/{applebatt => widapplebatt}/metadata.json | 8 ++++---- apps/{applebatt => widapplebatt}/screenshot1.png | Bin apps/{applebatt => widapplebatt}/screenshot2.png | Bin apps/{applebatt => widapplebatt}/screenshot3.png | Bin apps/{applebatt => widapplebatt}/settings.js | 2 +- apps/{applebatt => widapplebatt}/widget.js | 2 +- 8 files changed, 6 insertions(+), 6 deletions(-) rename apps/{applebatt => widapplebatt}/ChangeLog (100%) rename apps/{applebatt => widapplebatt}/app.png (100%) rename apps/{applebatt => widapplebatt}/metadata.json (74%) rename apps/{applebatt => widapplebatt}/screenshot1.png (100%) rename apps/{applebatt => widapplebatt}/screenshot2.png (100%) rename apps/{applebatt => widapplebatt}/screenshot3.png (100%) rename apps/{applebatt => widapplebatt}/settings.js (93%) rename apps/{applebatt => widapplebatt}/widget.js (92%) diff --git a/apps/applebatt/ChangeLog b/apps/widapplebatt/ChangeLog similarity index 100% rename from apps/applebatt/ChangeLog rename to apps/widapplebatt/ChangeLog diff --git a/apps/applebatt/app.png b/apps/widapplebatt/app.png similarity index 100% rename from apps/applebatt/app.png rename to apps/widapplebatt/app.png diff --git a/apps/applebatt/metadata.json b/apps/widapplebatt/metadata.json similarity index 74% rename from apps/applebatt/metadata.json rename to apps/widapplebatt/metadata.json index 8ee5ce2633d..92f5afa74f7 100644 --- a/apps/applebatt/metadata.json +++ b/apps/widapplebatt/metadata.json @@ -1,5 +1,5 @@ { - "id": "applebatt", + "id": "widapplebatt", "name": "Apple Battery Widget", "shortName":"Apple Battery", "icon": "app.png", @@ -11,11 +11,11 @@ "tags": "widget,battery", "provides_widgets" : ["battery"], "storage": [ - {"name":"applebatt.wid.js","url":"widget.js"}, - {"name":"applebatt.settings.js","url":"settings.js"} + {"name":"widapplebatt.wid.js","url":"widget.js"}, + {"name":"widapplebatt.settings.js","url":"settings.js"} ], "data":[ - {"name":"applebatt.settings.json"} + {"name":"widapplebatt.settings.json"} ], "screenshots": [{"url":"screenshot1.png"},{"url":"screenshot2.png"},{"url":"screenshot3.png"}] diff --git a/apps/applebatt/screenshot1.png b/apps/widapplebatt/screenshot1.png similarity index 100% rename from apps/applebatt/screenshot1.png rename to apps/widapplebatt/screenshot1.png diff --git a/apps/applebatt/screenshot2.png b/apps/widapplebatt/screenshot2.png similarity index 100% rename from apps/applebatt/screenshot2.png rename to apps/widapplebatt/screenshot2.png diff --git a/apps/applebatt/screenshot3.png b/apps/widapplebatt/screenshot3.png similarity index 100% rename from apps/applebatt/screenshot3.png rename to apps/widapplebatt/screenshot3.png diff --git a/apps/applebatt/settings.js b/apps/widapplebatt/settings.js similarity index 93% rename from apps/applebatt/settings.js rename to apps/widapplebatt/settings.js index 5d08f9fd7c3..06bf2b91c46 100644 --- a/apps/applebatt/settings.js +++ b/apps/widapplebatt/settings.js @@ -1,5 +1,5 @@ (function(back) { - const FILE = "applebatt.settings.json"; + const FILE = "widapplebatt.settings.json"; // Load settings var settings = Object.assign({ showPercent: true, diff --git a/apps/applebatt/widget.js b/apps/widapplebatt/widget.js similarity index 92% rename from apps/applebatt/widget.js rename to apps/widapplebatt/widget.js index d453c27a703..10407d21af2 100644 --- a/apps/applebatt/widget.js +++ b/apps/widapplebatt/widget.js @@ -4,7 +4,7 @@ var id; let settings; function reload() { - settings=require("Storage").readJSON("applebatt.settings.json")||{showPercent:true} + settings=require("Storage").readJSON("widapplebatt.settings.json")||{showPercent:true} } function draw() { g.reset("widget");