From 8ce516298ae22a1073d05587607e2cf9edec0a44 Mon Sep 17 00:00:00 2001 From: RKBoss6 Date: Thu, 21 May 2026 10:00:54 -0400 Subject: [PATCH 1/7] fix clockinfo bar not drawing with min and v --- apps/ultrainfo/app.js | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/apps/ultrainfo/app.js b/apps/ultrainfo/app.js index 51b928c54a..3b5c734161 100644 --- a/apps/ultrainfo/app.js +++ b/apps/ultrainfo/app.js @@ -86,12 +86,14 @@ let drawRectClockInfo = function (itm, info, options, top) { 1, settings.mainColor ); - if (info.max) { + + if (info.max&&info.v) { + let min=info.min?info.min:0 drawProgBar( options.x + 3, top ? options.y + options.h - 3 : options.y + 3, options.w - 6, - +parseFloat(("" + info.text).match(/[\d.]+/)) / info.max, + +(info.v-min) / (info.max-min), settings.accentColor ); } @@ -198,5 +200,3 @@ Bangle.setUI({ if (brClkInfo && brClkInfo.remove) brClkInfo.remove(); } }); - - From 1e4e56bcd7930eaacc111b01a448773f827369bf Mon Sep 17 00:00:00 2001 From: RKBoss6 Date: Thu, 21 May 2026 10:10:17 -0400 Subject: [PATCH 2/7] Use colorpicker module instead, and reduce bloat --- apps/ultrainfo/settings.js | 82 +++++++++++++------------------------- 1 file changed, 27 insertions(+), 55 deletions(-) diff --git a/apps/ultrainfo/settings.js b/apps/ultrainfo/settings.js index d05e151555..4685ad648e 100644 --- a/apps/ultrainfo/settings.js +++ b/apps/ultrainfo/settings.js @@ -10,66 +10,38 @@ require('Storage').writeJSON(FILE, settings); } - // same as in clock_bg - function getColorsImage(cols) { - var bpp = 1; - if (cols.length>4) bpp=4; - else if (cols.length>2) bpp=2; - var w = (cols.length>8)?8:16; - var b = Graphics.createArrayBuffer(w*cols.length,16,bpp); - b.palette = new Uint16Array(1<{ - b.setColor(i).fillRect(i*w,0,i*w+w-1,15); - b.palette[i] = g.toColor(c); - }); - return "\0"+b.asImage("string"); - } - function showAccentColor(){ - var menu={ - "" : { "title" : "Accent Color" }, - "< Back" : showMainMenu, - - } - var cols = ["#F00","#0F0","#FF0", - "#00F","#F0F","#0FF", - "#000","#888","#fff",]; - cols.forEach(col => { - menu[" "+getColorsImage([col])] = () => { - settings.accentColor=col; - writeSettings(); - showMainMenu(); - }; - }); - E.showMenu(menu); - } - -function showMainColor(){ - var menu={ - "" : { "title" : "Main Color" }, - "< Back" : showMainMenu, - - } - var cols = ["#F00","#0F0","#FF0", - "#00F","#F0F","#0FF", - "#000","#888","#fff",]; - cols.forEach(col => { - menu[" "+getColorsImage([col])] = () => { - settings.mainColor=col; - writeSettings(); - showMainMenu(); - }; - }); - E.showMenu(menu); - } - function showMainMenu(){ // Show the menu E.showMenu({ "" : { "title" : "Ultra Info" }, "< Back" : () => back(), - 'Main Color': showMainColor, - 'Accent Color': showAccentColor + 'Main Color': function(){ + require("colorpicker").show({ + onSelect:function(color){ + settings.mainColor=color; + writeSettings(); + }, + showPreview:true, + back:function(){ + showMainMenu() + } + + }); + }, + 'Accent Color': function(){ + require("colorpicker").show({ + onSelect:function(color){ + settings.accentColor=color; + writeSettings(); + }, + showPreview:true, + back:function(){ + showMainMenu() + } + + }); + }, }); } showMainMenu() -}) \ No newline at end of file +}) From f5321bfb256a39f54c66441ade43ad06d8bc9371 Mon Sep 17 00:00:00 2001 From: RKBoss6 Date: Thu, 21 May 2026 10:10:56 -0400 Subject: [PATCH 3/7] Bump version to 0.03 and add colorpicker dependency Updated version number and added a new dependency. --- apps/ultrainfo/metadata.json | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/apps/ultrainfo/metadata.json b/apps/ultrainfo/metadata.json index 157ce0a7b0..63c15f5a17 100644 --- a/apps/ultrainfo/metadata.json +++ b/apps/ultrainfo/metadata.json @@ -3,13 +3,13 @@ "name": "Ultra Info Clock", "shortName":"Ultra Info", "icon": "icon.png", - "version":"0.02", + "version":"0.03", "description": "The ultimate information clock with not 2, not 4, but 6 ClockInfos - for those who crave as much information as possible on their wrists.", "type":"clock", "tags": "clock,clkinfo", "author":"RKBoss6", "supports": ["BANGLEJS2"], - "dependencies" : { "clockbg":"module", "clock_info":"module"}, + "dependencies" : { "clockbg":"module", "clock_info":"module","colorpicker":"module"}, "allow_emulator":true, "readme":"README.md", "screenshots": [ @@ -19,6 +19,7 @@ {"url":"screenshot4.png"}, {"url":"screenshot5.png"} ], + "storage": [ {"name":"ultrainfo.app.js","url":"app.js"}, {"name":"ultrainfo.settings.js","url":"settings.js"}, From 038b0bc6a50223171d089e6dc89da540ab11d924 Mon Sep 17 00:00:00 2001 From: RKBoss6 Date: Thu, 21 May 2026 11:16:38 -0400 Subject: [PATCH 4/7] Update ChangeLog --- apps/ultrainfo/ChangeLog | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/apps/ultrainfo/ChangeLog b/apps/ultrainfo/ChangeLog index 9bb57a5e8b..f7c4ba553f 100644 --- a/apps/ultrainfo/ChangeLog +++ b/apps/ultrainfo/ChangeLog @@ -1,2 +1,3 @@ -0.01: New app +0.01: New app. 0.02: Add lock icon since it's not shown in widget bar, bug fixes and performance improvements. +0.03: Fix clkinfo progress bar not taking info.min and info.v into account, use the colorpicker module for settings. From 75b47ae5be38b5ae5b59b7281c2f718ea3369159 Mon Sep 17 00:00:00 2001 From: RKBoss6 Date: Thu, 21 May 2026 12:41:42 -0400 Subject: [PATCH 5/7] Refactor color selection to use showClMenu function --- apps/ultrainfo/settings.js | 38 +++++++++++++++----------------------- 1 file changed, 15 insertions(+), 23 deletions(-) diff --git a/apps/ultrainfo/settings.js b/apps/ultrainfo/settings.js index 4685ad648e..c4f2f5810c 100644 --- a/apps/ultrainfo/settings.js +++ b/apps/ultrainfo/settings.js @@ -9,37 +9,29 @@ function writeSettings() { require('Storage').writeJSON(FILE, settings); } - + function showClMenu(settingsKey){ + require("colorpicker").show({ + onSelect:function(color){ + settings[settingsKey]=color; + writeSettings(); + }, + showPreview:true, + back:function(){ + showMainMenu() + } + + }); + } function showMainMenu(){ // Show the menu E.showMenu({ "" : { "title" : "Ultra Info" }, "< Back" : () => back(), 'Main Color': function(){ - require("colorpicker").show({ - onSelect:function(color){ - settings.mainColor=color; - writeSettings(); - }, - showPreview:true, - back:function(){ - showMainMenu() - } - - }); + showClMenu("mainColor") }, 'Accent Color': function(){ - require("colorpicker").show({ - onSelect:function(color){ - settings.accentColor=color; - writeSettings(); - }, - showPreview:true, - back:function(){ - showMainMenu() - } - - }); + showClMenu("accentColor") }, }); } From ba4f7529f27505f4d760095a3c732b91f70c60d0 Mon Sep 17 00:00:00 2001 From: RKBoss6 Date: Thu, 21 May 2026 12:42:05 -0400 Subject: [PATCH 6/7] Fix calculation of progress bar value --- apps/ultrainfo/app.js | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/apps/ultrainfo/app.js b/apps/ultrainfo/app.js index 3b5c734161..73842fd415 100644 --- a/apps/ultrainfo/app.js +++ b/apps/ultrainfo/app.js @@ -88,12 +88,15 @@ let drawRectClockInfo = function (itm, info, options, top) { ); if (info.max&&info.v) { - let min=info.min?info.min:0 + let min=info.min?info.min:0; + let val=(info.v-min) / (info.max-min); + val=Math.max(0,val); + val=Math.min(1,val); drawProgBar( options.x + 3, top ? options.y + options.h - 3 : options.y + 3, options.w - 6, - +(info.v-min) / (info.max-min), + val, settings.accentColor ); } From 8d1e64c7e9e8e8fa32394b88727e682cc57d1c67 Mon Sep 17 00:00:00 2001 From: RKBoss6 Date: Wed, 27 May 2026 17:21:14 -0400 Subject: [PATCH 7/7] remove dependency of colorpicker as app loader auto-uploads it --- apps/ultrainfo/metadata.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/ultrainfo/metadata.json b/apps/ultrainfo/metadata.json index 63c15f5a17..0974da44ef 100644 --- a/apps/ultrainfo/metadata.json +++ b/apps/ultrainfo/metadata.json @@ -9,7 +9,7 @@ "tags": "clock,clkinfo", "author":"RKBoss6", "supports": ["BANGLEJS2"], - "dependencies" : { "clockbg":"module", "clock_info":"module","colorpicker":"module"}, + "dependencies" : { "clockbg":"module", "clock_info":"module"}, "allow_emulator":true, "readme":"README.md", "screenshots": [