From bb68b7e9d17afbcf59d43c9e646b1abffdd7eca2 Mon Sep 17 00:00:00 2001 From: Tim Kuhlmann Date: Sat, 12 Aug 2023 10:34:47 +0200 Subject: [PATCH 1/2] edgeclk: fix bar reset and 100k+ steps --- apps/edgeclk/ChangeLog | 1 + apps/edgeclk/app.js | 24 +++++++++++++++--------- apps/edgeclk/metadata.json | 2 +- 3 files changed, 17 insertions(+), 10 deletions(-) diff --git a/apps/edgeclk/ChangeLog b/apps/edgeclk/ChangeLog index 2a37193a3..da75dfbae 100644 --- a/apps/edgeclk/ChangeLog +++ b/apps/edgeclk/ChangeLog @@ -1 +1,2 @@ 0.01: Initial release. +0.02: Fix reset of progress bars on midnight. Fix display of 100k+ steps. diff --git a/apps/edgeclk/app.js b/apps/edgeclk/app.js index dfc847b33..9f28e2588 100644 --- a/apps/edgeclk/app.js +++ b/apps/edgeclk/app.js @@ -135,7 +135,8 @@ g.setFontAlign(-1, 1); // left bottom const steps = Bangle.getHealthStatus('day').steps; - g.drawString(steps.toString().padEnd(5, '_'), iconSize[0] + 6, g.getHeight() - 1, true); + g.drawString((steps < 100000 ? steps.toString() : ((steps / 1000).toFixed(0) + 'K')).padEnd(5, '_'), + iconSize[0] + 6, g.getHeight() - 1, true); if (onlyCount === true) { return; @@ -169,17 +170,22 @@ }; const drawBar = function (top, progress) { - g.drawRect(0, top, g.getWidth()-1, top + 5); - g.drawRect(1, top+1, g.getWidth()-2, top + 4); - const barLen = progress > 1 ? g.getWidth() : g.getWidth() * progress; - g.drawLine(2, top+2, barLen, top + 2); - g.drawLine(2, top+3, barLen, top + 3); + // draw frame + g.drawRect(0, top, g.getWidth() - 1, top + 5); + g.drawRect(1, top + 1, g.getWidth() - 2, top + 4); + // clear bar area + g.clearRect(2, top + 2, g.getWidth() - 3, top + 3); + // draw bar + const barLen = progress >= 1 ? g.getWidth() : (g.getWidth() - 4) * progress; + if (barLen < 1) return; + g.drawLine(2, top + 2, barLen + 2, top + 2); + g.drawLine(2, top + 3, barLen + 2, top + 3); }; const drawLine = function (top) { const width = g.getWidth(); - g.drawLine(0, top+2, width, top + 2); - g.drawLine(0, top+3, width, top + 3); + g.drawLine(0, top + 2, width, top + 2); + g.drawLine(0, top + 3, width, top + 3); }; @@ -251,7 +257,7 @@ // This is for original Bangle.js; version two has always-on display: Bangle.on('lcdPower', onLcdPower); - // Midnight event is triggered qhen health data is reset and a new day begins: + // Midnight event is triggered when health data is reset and a new day begins: Bangle.on('midnight', onMidnight); // Health data is published via 10 mins interval: diff --git a/apps/edgeclk/metadata.json b/apps/edgeclk/metadata.json index ac12a5f62..3f72be77a 100644 --- a/apps/edgeclk/metadata.json +++ b/apps/edgeclk/metadata.json @@ -2,7 +2,7 @@ "id": "edgeclk", "name": "Edge Clock", "shortName": "Edge Clock", - "version": "0.01", + "version": "0.02", "description": "Crisp clock with perfect readability.", "readme": "README.md", "icon": "app.png", From 0729baa3acb2069c32c716d6f2d584a5cb3dded9 Mon Sep 17 00:00:00 2001 From: Tim Kuhlmann Date: Sat, 12 Aug 2023 13:50:04 +0200 Subject: [PATCH 2/2] update edgeclk icon --- apps/edgeclk/app-icon.js | 2 +- apps/edgeclk/app.png | Bin 4430 -> 4630 bytes 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/edgeclk/app-icon.js b/apps/edgeclk/app-icon.js index 301abc93f..b81918b73 100644 --- a/apps/edgeclk/app-icon.js +++ b/apps/edgeclk/app-icon.js @@ -1 +1 @@ -require("heatshrink").decompress(atob("mEwgIJGtgEDkEAn0b3P8uF8kUK1P+sFclQFCuFMkULCIMgvk+GRH/ABQRF5feGwMH7/KjcAmUGqfLzYLBg1fBYU+s1f/QRDofbDog7Xj8P/EH4f+Ao/5w4FBg8MgOB4eOAo8AgIFCDoIFJhk4Aok5DogFEGoIFBGoIdDAozgLOKNwAovv33wg0f/AFFsGGmEGwf4seOmCnBuALCg/YqFv30wgGf7AFEA")) \ No newline at end of file +require("heatshrink").decompress(atob("mEwgMgBAoFEuADCgP8sAFD/wLE/wXDCIIjFAAv/ABQRF5fegEPgfe5UbgEJgVS5ebBYMyr36BYdC7YXEGq4AFj8f/ED8f+ApHjAoMHjkA8HjxwFIgAFCC4IFJjk4AoodEAogXBAoI1BDoYFGL5Z3XmHv33whkfuAFE/Fgw0whuD/Fjz0wh/fuALCh/Y/Fv30wgOf7AFE")) diff --git a/apps/edgeclk/app.png b/apps/edgeclk/app.png index 90fbec3f3d1da6bea37559545ffd2156cd8fce5e..3a0bbe130d4d0164e02aec84db636f761eb61baf 100644 GIT binary patch delta 784 zcmV+r1MmFKB9~XI@v`<9BUPdP$AR`tvZ-o`UOoIk`xz5!L{Jv z$70pN#aUMeS3wZ`0C9D3Qgo3L|Cbb6#CUMrk9YSTckcjyv&vMnCjqFMWn@xGA(vkj zg0Bc6jDAEgDlt=^6U8(<$Jaf4e7%eFEbnuFjsc}$GQcMgCx4i3Si~E|Gn0S*p<@e*aP zd%Qc;-P^xs+Wq|iSrT%b%+TIP000j@X;fHrSWQeiW3#>ifdV8lV`61uWH~u4IAvxr zEi`6fV=ZAYWil;eH8e0|Wn^PvGh{WBV+5!SI5aReH!w3YH8eLllNSYW3o$ZOF*7m5hGG<~eG&C`0En#D2 zGA&{@H#KEpHZ)^pWnq(12TBVuGE^}$Iy5voGcdEJ2W|)i_g^8VlRyw5lN%5ne+&yO z9&%XB&j0`by-7qtR5;7UlUoWyF$hEhtxM^C=4bZ5mFu&Ri?;b{LkPr!j>fna*04C( zg^h`76tn=72Re-iHD@(uJFFSZp%zFXDzG1RSD?ipT_JwRazMO+i5f5uHXc?TrO|j0 zKPhlt`ug61NQ7R2Urs>OTfn-WUXAxoBli(VxPcNs2O%(lUVH#m;JO#MiGKrs{M4Vm zyQaw8X^5^4z(*SPiv=;k6rbe;Itna6J~PzKgW=;ICh$t2SJ#jN+`t78N}gs^RiUFE#o2f)x%w$)^ zz$=32!2tR&C^O5LlcXd($Jaf4e7%eEEbnuFj(#;~F~BDh$A6e%+Qb{gGn=--d7n7U zin2<4PCQ}K1&JTIuDJZhxzJ>RXNJvmYMwYuEEYOg>0nkgHR5UFh^pz7FJxR+Id5^+ z%2n37Cx2lmr>`t?o#rSKSi}+}h)_^P31!%b(yEhUAw~Of5C2HhFOf?jR|$+93#dSY z-1LM0!S8OZ{D0J>n-q!z-7k*wF$M&7fkw@7zK|*WBJ(`#607($rP*1~@nb#tW3a z?(yzmXK(+WY4!I5DZO%u$$VeQ000hKX;fHrSWQeiW3#>ifdV8rH)T0BV`MiiWi~cp zEi^edWG!N2WMwU4G-6^kI5}cuHa9bqV+5!SH90XjHZ?UjFf}$XlNSYW3otoUF*Z6g zH##&mlad7^3otoUF*Z6gH##&mv%m%P0kf9~U>+n0QV^U)zCHNc`PPzJ8xG?!CH!Hrm>Et zM3I)%Eep~Fk=h$@f~N|bZomU65OZMuZgINY_w9V^`RMxn#|4l+W`V#MzhJot-~de7 z7XX}qh4})^4ekt|&Hn?h#v4Z)Pk?nkb1d_Su0aYV-3D2>fzdeUdHU3GGwdsL+zOCt i{pvRQMlqeh9ry+6XsKn4OQ%Wz0000