From ac6b928b0c8ed5da2ebeeff2f975080567ac06c5 Mon Sep 17 00:00:00 2001 From: eleanor <44651387+elykittytee@users.noreply.github.com> Date: Thu, 23 Feb 2023 08:29:23 -0600 Subject: [PATCH 01/61] Create app.js --- siptrackerclk/app.js | 114 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 114 insertions(+) create mode 100644 siptrackerclk/app.js diff --git a/siptrackerclk/app.js b/siptrackerclk/app.js new file mode 100644 index 000000000..e70d7bac6 --- /dev/null +++ b/siptrackerclk/app.js @@ -0,0 +1,114 @@ +const storage = require('Storage'); +const locale = require("locale"); +require("FontDylex7x13").add(Graphics); +const nameFont= g.getFont(); + +const width = 175; +const height = 175; +var tap = 0; + +var imgDay = { + width : 175, height : 175, bpp : 8, + transparent : 254, + buffer : require("heatshrink").decompress(atob("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")) +}; +var imgNt = { + width : 175, height : 175, bpp : 4, + transparent : 1, + palette : new Uint16Array([4334,65535,6346,2155,44095,4333,13079,12982,65535,44671,6480,8658,10836,4399,6545,11097]), + buffer : require("heatshrink").decompress(atob("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")) +}; +var imgDsk = { + width : 175, height : 175, bpp : 4, + transparent : 1, + palette : new Uint16Array([13269,65535,31702,25381,25401,42097,52019,15317,17365,37938,31670,29654,52428,40017,37907,19413]), + buffer : require("heatshrink").decompress(atob("iIA/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4Aei93AAkAAwoA/AH4A/AHGHIH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4AdgAJIuEHJf4A/AH4A3w5A/ACt4xBYJxBM/ABWIK5JiBJn6uLAAJbBLQRfCAQRaDCQRwEN4YECEAQFCvANCvAUGEQY3ECAQfCAQRGEHgj/DIAY1DAHyPCABhjDAH4AX/BA/ACuPK/4AW/4ABLI+PBQJN/VxJXCAH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A0/e734KH3e7CxQVIBYQZBBRIwCA4QdKDRQDEJY5XDG4gwBAwRPFCoQMJBoQHCGQIEDAYIMCAgQCCSoyMHNwQMEGYoKDAH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4Am2UiAH4A/AH4A/AH4AflWqACeiGcgQIHpyT/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A9qtVBRElBYNWJ35WJqQKJAANmsRQ/UQ9WsxVJBYIABNBSu7JQRWOK+g1BVhkms1lfQIXFq1lKwYOBB4r1vK5YNCT4RNBBQUmBQYADMwRXxJAVWsS7LIgJWCCIZUFAAohKVlBFDA4QODTQL3DAASuDVQoQFK2TkCsQHCqRKHIw5WFK4pSq8zaCJwT0BGwY+CdIhWKMYR0DDwbPCAFAsERwJIGWYavJBQYUDKoyurIIQ9BIwo7LBRBuIV2A9CGYayBHgo7FJYdSMBIAGK9MuKwfmKwpXEKxNVZwwAKJj3uABpWCKgQABqw6DCI5nBBYRwDABVuHBwAdIgdWVgo6E8te9yuDMoQcFAAJeGK1ozFsqSGCARhCM4IDEEZRTG8tVVtQALM4llXoYCCFiBWBK85WOtwPEKQT3UKwNWCaAALDhRWTXZIANY4NWYSIAKqpXQAwwXCKxVeEAosHVgLCTKxYdc9yyHsp+EBoJWLVzXlG4RXcVw7zBIoZJGKoIOCKzaNEKzavGsoFEQBAUFR7QeD9OZAAueCQ60YtwoFKoodJ9IDCDIoRID4VpKwwAGCIQECChmWKooTHBwY0OABed7oABzx1BrIVNCIJWBHARqOIxh5EAGdWRx3mf4wAGVbQAdrJHNAGGd7oAB6tVAAVdBAQAPC4YABCRgrECRorUJ5QyFABIZJCLIA/AH4A/AH4Ai7oAO6ownFEAA/AH4A/AH4A/AH4A/AH4A/AH4A0rnMAH4A/AH4A/AAlEAH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4AppEzmdE/9DBIdPCAv0okz//0pASFAggYBCQP//80/H0AwIACmg1FAogeBE4OPFwI9Noc/HYISBoc85nMLIPDAQIABmAyCMYMzgc8Bok8AwQaB4lDpk0DQYOBCYYnBCgM8JwU0HAJfBmdACQgZB4fMCgJEDCQQ9CJYgOBAAw3DDgISBCgQTIAAxLCCiIvCJgYUQIgQAXDQZJPYIiSCGpgjEThYUFEhgcFZ4otOcwJWFLQgvKCgKAFIxI9EEgoKCXgYMC4YiBFIj1BngpFHQgMBCgRZDCYYdDF5QhBDASNFGYTODKIgYCBQSKIABYUCJwYTMFYRjEChhjFChwqDAH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4AGmAA=")) +}; +Bangle.on('touch', (n, e) => { + // <88, top + if (e.x > 120 && e.y < 165) { + rectangle(120, 30, 0x001F); + tap+=3; + } else { + g.clearRect(120, 30, 165, 165); + g.setColor(0x000); + g.drawRect(120, 30, 165, 165); + } +}); + + +function rectangle(x, y, color) { + let b = 165; + //taptap(x, y, color, b); + if (tap>=120 && tap<=130) { + g.setColor(0x000); + milestone("Almost there~"); + taptap(x, y, color, b); + } else if (tap>=65 && tap<=70) { + g.setColor(0x000); + milestone("OHHH YOU'RE HALFWAY THERE"); + taptap(x, y, color, b); + } else if (tap>=18 && tap<=20) { + g.setColor(0x000); + milestone("Great start!!"); + taptap(x, y, color, b); + } else if (tap <= 135) { + g.clearRect(0,10,175,25); //textbox clear + taptap(x, y, color, b); + } else { + g.setColor(0x000); + milestone("Hydration achieved!"); + } +} + +function taptap(x,y,c,b){ + g.setColor(0x000).drawRect(x, y, b, b); + g.setColor(c).fillRect(x, b - tap, b, b); +} + +function milestone(phrase){ + g.setFont(nameFont).drawString(phrase, 170, 20).setFontAlign(1,0); +} + +function isDay(state){ + var d = new Date(); + var currentHr = d.getHours(); + if (currentHr>=19 && currentHr<=8){ + g.drawImage(imgNt,0,20); + } else if (currentHr>=17){ + g.drawImage(imgDsk,0,20); + } else { + g.drawImage(imgDay,0,20); + } +} + +function time(state) { + if (state==1){ + g.setColor(1,1,1); + } else { + g.setColor(0,0,0); + } + var d = new Date(); + var day = d.getDate(); + var time = require("locale").time(d, 1); + var date = require("locale").date(d); + var mo = require("date_utils").month(d.getMonth() + 1, 1); + g.setFontAlign(1, 0); + g.setFont(nameFont, 5).drawString(time, 107, 80); + g.setFont(nameFont, 3).drawString(mo + " " + day, 100, 110); +} + +function go() { + //g.setColor(0xFF0).fillRect(0,0,175,175); //bg + isDay(); + g.setColor(1,1,1).fillRect(120, 30, 165, 165); //meterwhite + g.setColor(0x000).drawRect(120, 30, 165, 165); //meteroutline + g.clearRect(0,10,175,25); //textbox + time(); +} + +//ready set go! +g.clear(); +Bangle.loadWidgets(); +Bangle.drawWidgets(); +go(); From 1db096919689efa0cf8f46c0fe0192b7d3e60e63 Mon Sep 17 00:00:00 2001 From: eleanor <44651387+elykittytee@users.noreply.github.com> Date: Thu, 23 Feb 2023 09:14:43 -0600 Subject: [PATCH 02/61] Delete siptrackerclk directory --- siptrackerclk/app.js | 114 ------------------------------------------- 1 file changed, 114 deletions(-) delete mode 100644 siptrackerclk/app.js diff --git a/siptrackerclk/app.js b/siptrackerclk/app.js deleted file mode 100644 index e70d7bac6..000000000 --- a/siptrackerclk/app.js +++ /dev/null @@ -1,114 +0,0 @@ -const storage = require('Storage'); -const locale = require("locale"); -require("FontDylex7x13").add(Graphics); -const nameFont= g.getFont(); - -const width = 175; -const height = 175; -var tap = 0; - -var imgDay = { - width : 175, height : 175, bpp : 8, - transparent : 254, - buffer : require("heatshrink").decompress(atob("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")) -}; -var imgNt = { - width : 175, height : 175, bpp : 4, - transparent : 1, - palette : new Uint16Array([4334,65535,6346,2155,44095,4333,13079,12982,65535,44671,6480,8658,10836,4399,6545,11097]), - buffer : require("heatshrink").decompress(atob("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")) -}; -var imgDsk = { - width : 175, height : 175, bpp : 4, - transparent : 1, - palette : new Uint16Array([13269,65535,31702,25381,25401,42097,52019,15317,17365,37938,31670,29654,52428,40017,37907,19413]), - buffer : require("heatshrink").decompress(atob("iIA/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4Aei93AAkAAwoA/AH4A/AHGHIH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4AdgAJIuEHJf4A/AH4A3w5A/ACt4xBYJxBM/ABWIK5JiBJn6uLAAJbBLQRfCAQRaDCQRwEN4YECEAQFCvANCvAUGEQY3ECAQfCAQRGEHgj/DIAY1DAHyPCABhjDAH4AX/BA/ACuPK/4AW/4ABLI+PBQJN/VxJXCAH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A0/e734KH3e7CxQVIBYQZBBRIwCA4QdKDRQDEJY5XDG4gwBAwRPFCoQMJBoQHCGQIEDAYIMCAgQCCSoyMHNwQMEGYoKDAH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4Am2UiAH4A/AH4A/AH4AflWqACeiGcgQIHpyT/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A9qtVBRElBYNWJ35WJqQKJAANmsRQ/UQ9WsxVJBYIABNBSu7JQRWOK+g1BVhkms1lfQIXFq1lKwYOBB4r1vK5YNCT4RNBBQUmBQYADMwRXxJAVWsS7LIgJWCCIZUFAAohKVlBFDA4QODTQL3DAASuDVQoQFK2TkCsQHCqRKHIw5WFK4pSq8zaCJwT0BGwY+CdIhWKMYR0DDwbPCAFAsERwJIGWYavJBQYUDKoyurIIQ9BIwo7LBRBuIV2A9CGYayBHgo7FJYdSMBIAGK9MuKwfmKwpXEKxNVZwwAKJj3uABpWCKgQABqw6DCI5nBBYRwDABVuHBwAdIgdWVgo6E8te9yuDMoQcFAAJeGK1ozFsqSGCARhCM4IDEEZRTG8tVVtQALM4llXoYCCFiBWBK85WOtwPEKQT3UKwNWCaAALDhRWTXZIANY4NWYSIAKqpXQAwwXCKxVeEAosHVgLCTKxYdc9yyHsp+EBoJWLVzXlG4RXcVw7zBIoZJGKoIOCKzaNEKzavGsoFEQBAUFR7QeD9OZAAueCQ60YtwoFKoodJ9IDCDIoRID4VpKwwAGCIQECChmWKooTHBwY0OABed7oABzx1BrIVNCIJWBHARqOIxh5EAGdWRx3mf4wAGVbQAdrJHNAGGd7oAB6tVAAVdBAQAPC4YABCRgrECRorUJ5QyFABIZJCLIA/AH4A/AH4Ai7oAO6ownFEAA/AH4A/AH4A/AH4A/AH4A/AH4A0rnMAH4A/AH4A/AAlEAH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4AppEzmdE/9DBIdPCAv0okz//0pASFAggYBCQP//80/H0AwIACmg1FAogeBE4OPFwI9Noc/HYISBoc85nMLIPDAQIABmAyCMYMzgc8Bok8AwQaB4lDpk0DQYOBCYYnBCgM8JwU0HAJfBmdACQgZB4fMCgJEDCQQ9CJYgOBAAw3DDgISBCgQTIAAxLCCiIvCJgYUQIgQAXDQZJPYIiSCGpgjEThYUFEhgcFZ4otOcwJWFLQgvKCgKAFIxI9EEgoKCXgYMC4YiBFIj1BngpFHQgMBCgRZDCYYdDF5QhBDASNFGYTODKIgYCBQSKIABYUCJwYTMFYRjEChhjFChwqDAH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4AGmAA=")) -}; -Bangle.on('touch', (n, e) => { - // <88, top - if (e.x > 120 && e.y < 165) { - rectangle(120, 30, 0x001F); - tap+=3; - } else { - g.clearRect(120, 30, 165, 165); - g.setColor(0x000); - g.drawRect(120, 30, 165, 165); - } -}); - - -function rectangle(x, y, color) { - let b = 165; - //taptap(x, y, color, b); - if (tap>=120 && tap<=130) { - g.setColor(0x000); - milestone("Almost there~"); - taptap(x, y, color, b); - } else if (tap>=65 && tap<=70) { - g.setColor(0x000); - milestone("OHHH YOU'RE HALFWAY THERE"); - taptap(x, y, color, b); - } else if (tap>=18 && tap<=20) { - g.setColor(0x000); - milestone("Great start!!"); - taptap(x, y, color, b); - } else if (tap <= 135) { - g.clearRect(0,10,175,25); //textbox clear - taptap(x, y, color, b); - } else { - g.setColor(0x000); - milestone("Hydration achieved!"); - } -} - -function taptap(x,y,c,b){ - g.setColor(0x000).drawRect(x, y, b, b); - g.setColor(c).fillRect(x, b - tap, b, b); -} - -function milestone(phrase){ - g.setFont(nameFont).drawString(phrase, 170, 20).setFontAlign(1,0); -} - -function isDay(state){ - var d = new Date(); - var currentHr = d.getHours(); - if (currentHr>=19 && currentHr<=8){ - g.drawImage(imgNt,0,20); - } else if (currentHr>=17){ - g.drawImage(imgDsk,0,20); - } else { - g.drawImage(imgDay,0,20); - } -} - -function time(state) { - if (state==1){ - g.setColor(1,1,1); - } else { - g.setColor(0,0,0); - } - var d = new Date(); - var day = d.getDate(); - var time = require("locale").time(d, 1); - var date = require("locale").date(d); - var mo = require("date_utils").month(d.getMonth() + 1, 1); - g.setFontAlign(1, 0); - g.setFont(nameFont, 5).drawString(time, 107, 80); - g.setFont(nameFont, 3).drawString(mo + " " + day, 100, 110); -} - -function go() { - //g.setColor(0xFF0).fillRect(0,0,175,175); //bg - isDay(); - g.setColor(1,1,1).fillRect(120, 30, 165, 165); //meterwhite - g.setColor(0x000).drawRect(120, 30, 165, 165); //meteroutline - g.clearRect(0,10,175,25); //textbox - time(); -} - -//ready set go! -g.clear(); -Bangle.loadWidgets(); -Bangle.drawWidgets(); -go(); From 21ac9e2ef72c565bd138f3d9734d6b44f34642fa Mon Sep 17 00:00:00 2001 From: eleanor <44651387+elykittytee@users.noreply.github.com> Date: Thu, 23 Feb 2023 09:15:05 -0600 Subject: [PATCH 03/61] Create app.js --- apps/siptrackerclk/app.js | 123 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 123 insertions(+) create mode 100644 apps/siptrackerclk/app.js diff --git a/apps/siptrackerclk/app.js b/apps/siptrackerclk/app.js new file mode 100644 index 000000000..b278ce85f --- /dev/null +++ b/apps/siptrackerclk/app.js @@ -0,0 +1,123 @@ +const storage = require('Storage'); +const locale = require("locale"); +require("FontDylex7x13").add(Graphics); +const nameFont= g.getFont(); + +const width = 175; +const height = 175; + +var tap = 0; +var d = new Date(); +var nowDate = d.getDate(); //today's date + +var imgDay = { + width : 175, height : 175, bpp : 8, + transparent : 254, + buffer : require("heatshrink").decompress(atob("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")) +}; +var imgNt = { + width : 175, height : 175, bpp : 4, + transparent : 1, + palette : new Uint16Array([4334,65535,6346,2155,44095,4333,13079,12982,65535,44671,6480,8658,10836,4399,6545,11097]), + buffer : require("heatshrink").decompress(atob("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")) +}; +var imgDsk = { + width : 175, height : 175, bpp : 4, + transparent : 1, + palette : new Uint16Array([13269,65535,31702,25381,25401,42097,52019,15317,17365,37938,31670,29654,52428,40017,37907,19413]), + buffer : require("heatshrink").decompress(atob("iIA/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4Aei93AAkAAwoA/AH4A/AHGHIH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4AdgAJIuEHJf4A/AH4A3w5A/ACt4xBYJxBM/ABWIK5JiBJn6uLAAJbBLQRfCAQRaDCQRwEN4YECEAQFCvANCvAUGEQY3ECAQfCAQRGEHgj/DIAY1DAHyPCABhjDAH4AX/BA/ACuPK/4AW/4ABLI+PBQJN/VxJXCAH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A0/e734KH3e7CxQVIBYQZBBRIwCA4QdKDRQDEJY5XDG4gwBAwRPFCoQMJBoQHCGQIEDAYIMCAgQCCSoyMHNwQMEGYoKDAH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4Am2UiAH4A/AH4A/AH4AflWqACeiGcgQIHpyT/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A9qtVBRElBYNWJ35WJqQKJAANmsRQ/UQ9WsxVJBYIABNBSu7JQRWOK+g1BVhkms1lfQIXFq1lKwYOBB4r1vK5YNCT4RNBBQUmBQYADMwRXxJAVWsS7LIgJWCCIZUFAAohKVlBFDA4QODTQL3DAASuDVQoQFK2TkCsQHCqRKHIw5WFK4pSq8zaCJwT0BGwY+CdIhWKMYR0DDwbPCAFAsERwJIGWYavJBQYUDKoyurIIQ9BIwo7LBRBuIV2A9CGYayBHgo7FJYdSMBIAGK9MuKwfmKwpXEKxNVZwwAKJj3uABpWCKgQABqw6DCI5nBBYRwDABVuHBwAdIgdWVgo6E8te9yuDMoQcFAAJeGK1ozFsqSGCARhCM4IDEEZRTG8tVVtQALM4llXoYCCFiBWBK85WOtwPEKQT3UKwNWCaAALDhRWTXZIANY4NWYSIAKqpXQAwwXCKxVeEAosHVgLCTKxYdc9yyHsp+EBoJWLVzXlG4RXcVw7zBIoZJGKoIOCKzaNEKzavGsoFEQBAUFR7QeD9OZAAueCQ60YtwoFKoodJ9IDCDIoRID4VpKwwAGCIQECChmWKooTHBwY0OABed7oABzx1BrIVNCIJWBHARqOIxh5EAGdWRx3mf4wAGVbQAdrJHNAGGd7oAB6tVAAVdBAQAPC4YABCRgrECRorUJ5QyFABIZJCLIA/AH4A/AH4Ai7oAO6ownFEAA/AH4A/AH4A/AH4A/AH4A/AH4A0rnMAH4A/AH4A/AAlEAH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4AppEzmdE/9DBIdPCAv0okz//0pASFAggYBCQP//80/H0AwIACmg1FAogeBE4OPFwI9Noc/HYISBoc85nMLIPDAQIABmAyCMYMzgc8Bok8AwQaB4lDpk0DQYOBCYYnBCgM8JwU0HAJfBmdACQgZB4fMCgJEDCQQ9CJYgOBAAw3DDgISBCgQTIAAxLCCiIvCJgYUQIgQAXDQZJPYIiSCGpgjEThYUFEhgcFZ4otOcwJWFLQgvKCgKAFIxI9EEgoKCXgYMC4YiBFIj1BngpFHQgMBCgRZDCYYdDF5QhBDASNFGYTODKIgYCBQSKIABYUCJwYTMFYRjEChhjFChwqDAH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4AGmAA=")) +}; + +Bangle.on('touch', (n, e) => { + // <88, top + if (e.x > 120 && e.y < 165) { + boxTap(120, 30, 0x001F); + tap+=3; + } + else { + encourage("RANDOM ENCOURAGEMENT"); + } +}); + +function drawTap(x,y,c,b){ //blue box + if (d.getDate() != nowDate){ + tap=0; + } + else { + g.setColor(0x000).drawRect(x, y, b, b); + g.setColor(c).fillRect(x, b - tap, b, b); + } +} + +function boxTap(x, y, color) { //progress + let b = 165; + if (tap>=120 && tap<=130) { + g.setColor(0x000); + milestone("Almost there~"); + drawTap(x, y, color, b); + } else if (tap>=65 && tap<=70) { + g.setColor(0x000); + milestone("OHHH YOU'RE HALFWAY THERE"); + drawTap(x, y, color, b); + } else if (tap>=18 && tap<=20) { + g.setColor(0x000); + milestone("Great start!!"); + drawTap(x, y, color, b); + } else if (tap <= 135) { + g.clearRect(0,10,175,25); //textbox clear + drawTap(x, y, color, b); + } else { + g.setColor(0x000); + milestone("Hydration achieved!"); + } +} + +function milestone(phrase){ //progress + g.setFont(nameFont).drawString(phrase, 170, 20).setFontAlign(-1,0); +} + +function encourage(phrase){ + g.setFont(nameFont).drawString(phrase, 65, 20).setFontAlign(0,0); +} + +function isDay(state){ + var d = new Date(); + var currentHr = d.getHours(); + if (currentHr>=19 && currentHr<=8){ + g.drawImage(imgNt,0,20); + } else if (currentHr>=17){ + g.drawImage(imgDsk,0,20); + } else { + g.drawImage(imgDay,0,20); + } +} + +function time(state) { + if (state==1){ + g.setColor(1,1,1); + } else { + g.setColor(0,0,0); + } + var day = d.getDate(); + var time = require("locale").time(d, 1); + var date = require("locale").date(d); + var mo = require("date_utils").month(d.getMonth() + 1, 1); + g.setFontAlign(1, 0); + g.setFont(nameFont, 5).drawString(time, 107, 80); + g.setFont(nameFont, 3).drawString(mo + " " + day, 100, 110); +} + +function go() { + //g.setColor(0xFF0).fillRect(0,0,175,175); //bg + isDay(); + g.setColor(1,1,1).fillRect(120, 30, 165, 165); //meterwhite + g.setColor(0x000).drawRect(120, 30, 165, 165); //meteroutline + g.clearRect(0,10,175,25); //textbox + time(); +} + +//ready set go! +g.clear(); +Bangle.loadWidgets(); +Bangle.drawWidgets(); +go(); From e87052bf7aede25c288deddd885fb341ecd3a3f5 Mon Sep 17 00:00:00 2001 From: eleanor <44651387+elykittytee@users.noreply.github.com> Date: Thu, 23 Feb 2023 09:15:50 -0600 Subject: [PATCH 04/61] Create ChangeLog --- apps/siptrackerclk/ChangeLog | 2 ++ 1 file changed, 2 insertions(+) create mode 100644 apps/siptrackerclk/ChangeLog diff --git a/apps/siptrackerclk/ChangeLog b/apps/siptrackerclk/ChangeLog new file mode 100644 index 000000000..1da556cd4 --- /dev/null +++ b/apps/siptrackerclk/ChangeLog @@ -0,0 +1,2 @@ +23-02-23 +- New app~ From 77ffa414a24462e0de20e8d27a3d8e9ee33862f0 Mon Sep 17 00:00:00 2001 From: eleanor <44651387+elykittytee@users.noreply.github.com> Date: Thu, 23 Feb 2023 09:17:38 -0600 Subject: [PATCH 05/61] Create info.md --- apps/siptrackerclk/info.md | 6 ++++++ 1 file changed, 6 insertions(+) create mode 100644 apps/siptrackerclk/info.md diff --git a/apps/siptrackerclk/info.md b/apps/siptrackerclk/info.md new file mode 100644 index 000000000..a1aa42802 --- /dev/null +++ b/apps/siptrackerclk/info.md @@ -0,0 +1,6 @@ +require("Storage").write("siptrackerclk.info",{ + "id":"h2osiptracker", + "name":"H2O Sip Tracker Clock", + "type":"clock", + "src":"siptrackerclk.app.js" +}); From 3b69fab5973ab756d119fe7f9a132cf686452703 Mon Sep 17 00:00:00 2001 From: eleanor <44651387+elykittytee@users.noreply.github.com> Date: Thu, 23 Feb 2023 10:41:37 -0600 Subject: [PATCH 06/61] Create readme.md --- apps/siptrackerclk/readme.md | 15 +++++++++++++++ 1 file changed, 15 insertions(+) create mode 100644 apps/siptrackerclk/readme.md diff --git a/apps/siptrackerclk/readme.md b/apps/siptrackerclk/readme.md new file mode 100644 index 000000000..7e397de0e --- /dev/null +++ b/apps/siptrackerclk/readme.md @@ -0,0 +1,15 @@ +# H2O Sip Tracker Watchface + +Made for Bangle.js 2 + +# Features +- BG changes based on time + +# Requests +If you have any issues or would like to suggest a feature, @ me on Twitter. + +# Attribution +- Royalty-free pixel backgrounds from [FreePik](https://www.freepik.com/) + +# Creator +[Eleanor Tayam](http://twitter.com/elykittytee) From 1640b4861c98585ad313dd687e921f1f448daecc Mon Sep 17 00:00:00 2001 From: eleanor <44651387+elykittytee@users.noreply.github.com> Date: Thu, 23 Feb 2023 10:41:51 -0600 Subject: [PATCH 07/61] Update app.js --- apps/siptrackerclk/app.js | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/apps/siptrackerclk/app.js b/apps/siptrackerclk/app.js index b278ce85f..ad42825d7 100644 --- a/apps/siptrackerclk/app.js +++ b/apps/siptrackerclk/app.js @@ -39,6 +39,7 @@ Bangle.on('touch', (n, e) => { } }); +//visuals function drawTap(x,y,c,b){ //blue box if (d.getDate() != nowDate){ tap=0; @@ -73,13 +74,15 @@ function boxTap(x, y, color) { //progress } function milestone(phrase){ //progress - g.setFont(nameFont).drawString(phrase, 170, 20).setFontAlign(-1,0); + g.setFontAlign(1,0); + g.setFont(nameFont).drawString(phrase, 170, 20); } -function encourage(phrase){ - g.setFont(nameFont).drawString(phrase, 65, 20).setFontAlign(0,0); +function encourage(phrase){ //non-bar tap + g.setFont(nameFont).drawString(phrase, 65, 20).setFontAlign(-1,0); } +//time function isDay(state){ var d = new Date(); var currentHr = d.getHours(); From cf64dbb19624d40a4a6884a5ffb757e0f11542af Mon Sep 17 00:00:00 2001 From: eleanor <44651387+elykittytee@users.noreply.github.com> Date: Thu, 23 Feb 2023 14:59:06 -0600 Subject: [PATCH 08/61] fixed everything, yay --- apps/siptrackerclk/app.js | 141 +++++++++++++++++++------------------- 1 file changed, 71 insertions(+), 70 deletions(-) diff --git a/apps/siptrackerclk/app.js b/apps/siptrackerclk/app.js index ad42825d7..40950bc55 100644 --- a/apps/siptrackerclk/app.js +++ b/apps/siptrackerclk/app.js @@ -3,13 +3,20 @@ const locale = require("locale"); require("FontDylex7x13").add(Graphics); const nameFont= g.getFont(); -const width = 175; +const width = 175; const height = 175; -var tap = 0; +const bx1 = 120; +const by2 = 165; +const bFull = 135; +const bWidth = 25; +const offset = 30 + +var tap = 0;//tap counter var d = new Date(); var nowDate = d.getDate(); //today's date - +var encourage = ["You\'re doing great!","Pas de deux it!","Amazing~"]; +//images var imgDay = { width : 175, height : 175, bpp : 8, transparent : 254, @@ -27,98 +34,92 @@ var imgDsk = { palette : new Uint16Array([13269,65535,31702,25381,25401,42097,52019,15317,17365,37938,31670,29654,52428,40017,37907,19413]), buffer : require("heatshrink").decompress(atob("iIA/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4Aei93AAkAAwoA/AH4A/AHGHIH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4AdgAJIuEHJf4A/AH4A3w5A/ACt4xBYJxBM/ABWIK5JiBJn6uLAAJbBLQRfCAQRaDCQRwEN4YECEAQFCvANCvAUGEQY3ECAQfCAQRGEHgj/DIAY1DAHyPCABhjDAH4AX/BA/ACuPK/4AW/4ABLI+PBQJN/VxJXCAH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A0/e734KH3e7CxQVIBYQZBBRIwCA4QdKDRQDEJY5XDG4gwBAwRPFCoQMJBoQHCGQIEDAYIMCAgQCCSoyMHNwQMEGYoKDAH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4Am2UiAH4A/AH4A/AH4AflWqACeiGcgQIHpyT/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A9qtVBRElBYNWJ35WJqQKJAANmsRQ/UQ9WsxVJBYIABNBSu7JQRWOK+g1BVhkms1lfQIXFq1lKwYOBB4r1vK5YNCT4RNBBQUmBQYADMwRXxJAVWsS7LIgJWCCIZUFAAohKVlBFDA4QODTQL3DAASuDVQoQFK2TkCsQHCqRKHIw5WFK4pSq8zaCJwT0BGwY+CdIhWKMYR0DDwbPCAFAsERwJIGWYavJBQYUDKoyurIIQ9BIwo7LBRBuIV2A9CGYayBHgo7FJYdSMBIAGK9MuKwfmKwpXEKxNVZwwAKJj3uABpWCKgQABqw6DCI5nBBYRwDABVuHBwAdIgdWVgo6E8te9yuDMoQcFAAJeGK1ozFsqSGCARhCM4IDEEZRTG8tVVtQALM4llXoYCCFiBWBK85WOtwPEKQT3UKwNWCaAALDhRWTXZIANY4NWYSIAKqpXQAwwXCKxVeEAosHVgLCTKxYdc9yyHsp+EBoJWLVzXlG4RXcVw7zBIoZJGKoIOCKzaNEKzavGsoFEQBAUFR7QeD9OZAAueCQ60YtwoFKoodJ9IDCDIoRID4VpKwwAGCIQECChmWKooTHBwY0OABed7oABzx1BrIVNCIJWBHARqOIxh5EAGdWRx3mf4wAGVbQAdrJHNAGGd7oAB6tVAAVdBAQAPC4YABCRgrECRorUJ5QyFABIZJCLIA/AH4A/AH4Ai7oAO6ownFEAA/AH4A/AH4A/AH4A/AH4A/AH4A0rnMAH4A/AH4A/AAlEAH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4AppEzmdE/9DBIdPCAv0okz//0pASFAggYBCQP//80/H0AwIACmg1FAogeBE4OPFwI9Noc/HYISBoc85nMLIPDAQIABmAyCMYMzgc8Bok8AwQaB4lDpk0DQYOBCYYnBCgM8JwU0HAJfBmdACQgZB4fMCgJEDCQQ9CJYgOBAAw3DDgISBCgQTIAAxLCCiIvCJgYUQIgQAXDQZJPYIiSCGpgjEThYUFEhgcFZ4otOcwJWFLQgvKCgKAFIxI9EEgoKCXgYMC4YiBFIj1BngpFHQgMBCgRZDCYYdDF5QhBDASNFGYTODKIgYCBQSKIABYUCJwYTMFYRjEChhjFChwqDAH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4AGmAA=")) }; +var bg = [imgDay,imgNt,imgDsk]; +//TAP ALL THE THINGS Bangle.on('touch', (n, e) => { // <88, top - if (e.x > 120 && e.y < 165) { - boxTap(120, 30, 0x001F); - tap+=3; + if (e.x > bx1 && e.y < by2) { //bar + //tap counter, then draw + boxTap(bx1, by2); } else { - encourage("RANDOM ENCOURAGEMENT"); + clearText(); + g.setColor(0,0,0).setFont(nameFont).setFontAlign(0,0).drawString(getEncour(), width/2, 25); + setInterval(clearText,2000); } }); -//visuals -function drawTap(x,y,c,b){ //blue box - if (d.getDate() != nowDate){ +//getters +function getRandomInt(max) { + return Math.floor(Math.random() * max); +} + +function getEncour(){ //return string + let string; + return encourage[getRandomInt(encourage.length)]; +} + +//clear stuff +function clearText(){ + g.clearRect(0,10,175,offset-2); +} + +function clearBar(){ + g.setColor(1,1,1).fillRect(bx1+1, bWidth, by2, by2); //meterwhite + g.setColor(0x000).drawRect(bx1, bWidth, by2, by2); //meteroutline + g.clearRect(0,10,175,25); //textbox +} + +//progress bar +function boxTap(x, y) { + if (tap <= 135) { + //clear textbox, add progress bar + clearText(); + g.setColor(0,0,1).fillRect(x+1, y - tap, y-1, y); + tap+=3; + } else { //HYDRATION ACHIEVED + g.setColor(0x000); + g.setColor(0,0,0).setFont(nameFont).setFontAlign(0,0).drawString("Hydration Achieved!", width/2, 25); + } +} + +function time() { + var day = d.getDate(); + var time = require("locale").time(d, 1); + var date = require("locale").date(d); + var mo = require("date_utils").month(d.getMonth() + 1, 1); + + if (d.getDate() != nowDate){ //reset every new day tap=0; + clearBar(); } - else { - g.setColor(0x000).drawRect(x, y, b, b); - g.setColor(c).fillRect(x, b - tap, b, b); - } + + g.setFontAlign(1, 0); + g.setFont(nameFont, 5).drawString(time, 107, 80); + g.setFont(nameFont, 3).drawString(mo + " " + day, 100, 110); } -function boxTap(x, y, color) { //progress - let b = 165; - if (tap>=120 && tap<=130) { - g.setColor(0x000); - milestone("Almost there~"); - drawTap(x, y, color, b); - } else if (tap>=65 && tap<=70) { - g.setColor(0x000); - milestone("OHHH YOU'RE HALFWAY THERE"); - drawTap(x, y, color, b); - } else if (tap>=18 && tap<=20) { - g.setColor(0x000); - milestone("Great start!!"); - drawTap(x, y, color, b); - } else if (tap <= 135) { - g.clearRect(0,10,175,25); //textbox clear - drawTap(x, y, color, b); - } else { - g.setColor(0x000); - milestone("Hydration achieved!"); - } -} -function milestone(phrase){ //progress - g.setFontAlign(1,0); - g.setFont(nameFont).drawString(phrase, 170, 20); -} - -function encourage(phrase){ //non-bar tap - g.setFont(nameFont).drawString(phrase, 65, 20).setFontAlign(-1,0); -} - -//time -function isDay(state){ - var d = new Date(); +function go() { var currentHr = d.getHours(); - if (currentHr>=19 && currentHr<=8){ + if (currentHr>=19 && currentHr<=8){ //bg change on time g.drawImage(imgNt,0,20); } else if (currentHr>=17){ g.drawImage(imgDsk,0,20); } else { g.drawImage(imgDay,0,20); } -} -function time(state) { - if (state==1){ - g.setColor(1,1,1); - } else { - g.setColor(0,0,0); - } - var day = d.getDate(); - var time = require("locale").time(d, 1); - var date = require("locale").date(d); - var mo = require("date_utils").month(d.getMonth() + 1, 1); - g.setFontAlign(1, 0); - g.setFont(nameFont, 5).drawString(time, 107, 80); - g.setFont(nameFont, 3).drawString(mo + " " + day, 100, 110); -} - -function go() { - //g.setColor(0xFF0).fillRect(0,0,175,175); //bg - isDay(); - g.setColor(1,1,1).fillRect(120, 30, 165, 165); //meterwhite - g.setColor(0x000).drawRect(120, 30, 165, 165); //meteroutline + g.setColor(1,1,1).fillRect(bx1+1, bWidth, by2, by2); //meterwhite + g.setColor(0x000).drawRect(bx1, offset, by2, by2); //meteroutline g.clearRect(0,10,175,25); //textbox time(); } + +// g.clearRect(0,10,175,25); //textbox clear + //ready set go! g.clear(); Bangle.loadWidgets(); From 3ea3f32ae547cbbdd5c460aa39c40d10a795b564 Mon Sep 17 00:00:00 2001 From: eleanor <44651387+elykittytee@users.noreply.github.com> Date: Thu, 23 Feb 2023 15:03:27 -0600 Subject: [PATCH 09/61] Add files via upload --- apps/siptrackerclk/screenshot.png | Bin 0 -> 4119 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 apps/siptrackerclk/screenshot.png diff --git a/apps/siptrackerclk/screenshot.png b/apps/siptrackerclk/screenshot.png new file mode 100644 index 0000000000000000000000000000000000000000..5e486828e6b52c30f1b608bae247c7b2eb218b6f GIT binary patch literal 4119 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 literal 0 HcmV?d00001 From 1ef37baa140384887228e9aff2fa1204bd24fb43 Mon Sep 17 00:00:00 2001 From: eleanor <44651387+elykittytee@users.noreply.github.com> Date: Thu, 23 Feb 2023 15:06:16 -0600 Subject: [PATCH 10/61] Update readme.md --- apps/siptrackerclk/readme.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/apps/siptrackerclk/readme.md b/apps/siptrackerclk/readme.md index 7e397de0e..7b6b96723 100644 --- a/apps/siptrackerclk/readme.md +++ b/apps/siptrackerclk/readme.md @@ -2,6 +2,8 @@ Made for Bangle.js 2 +![screenshot.png](https://github.com/elykittytee/BangleApps/blob/elykittytee-patch-1/apps/siptrackerclk/screenshot.png?raw=true) + # Features - BG changes based on time From 9e57285db2ff1be9d0a08a9cf7916501739c095a Mon Sep 17 00:00:00 2001 From: eleanor <44651387+elykittytee@users.noreply.github.com> Date: Thu, 23 Feb 2023 15:19:19 -0600 Subject: [PATCH 11/61] Update info.md --- apps/siptrackerclk/info.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/siptrackerclk/info.md b/apps/siptrackerclk/info.md index a1aa42802..c1b62714d 100644 --- a/apps/siptrackerclk/info.md +++ b/apps/siptrackerclk/info.md @@ -1,6 +1,6 @@ require("Storage").write("siptrackerclk.info",{ "id":"h2osiptracker", - "name":"H2O Sip Tracker Clock", + "name":"Water Sip Tracker Clock", "type":"clock", "src":"siptrackerclk.app.js" }); From 1ec9813c804b4d403fa1c6faf8790a210df5b971 Mon Sep 17 00:00:00 2001 From: eleanor <44651387+elykittytee@users.noreply.github.com> Date: Thu, 23 Feb 2023 20:38:33 -0600 Subject: [PATCH 12/61] fixed wrong file name --- apps/siptrackerclk/{info.md => metadata.json} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename apps/siptrackerclk/{info.md => metadata.json} (100%) diff --git a/apps/siptrackerclk/info.md b/apps/siptrackerclk/metadata.json similarity index 100% rename from apps/siptrackerclk/info.md rename to apps/siptrackerclk/metadata.json From 338383ff8350e2ff93ba8697c8d9017e53a4af23 Mon Sep 17 00:00:00 2001 From: eleanor <44651387+elykittytee@users.noreply.github.com> Date: Thu, 23 Feb 2023 20:41:35 -0600 Subject: [PATCH 13/61] Rename readme.md to README.md --- apps/siptrackerclk/{readme.md => README.md} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename apps/siptrackerclk/{readme.md => README.md} (100%) diff --git a/apps/siptrackerclk/readme.md b/apps/siptrackerclk/README.md similarity index 100% rename from apps/siptrackerclk/readme.md rename to apps/siptrackerclk/README.md From a671036ea8d591a762bc53b1135cd01f3f123e1f Mon Sep 17 00:00:00 2001 From: eleanor <44651387+elykittytee@users.noreply.github.com> Date: Thu, 23 Feb 2023 20:42:33 -0600 Subject: [PATCH 14/61] Update metadata.json --- apps/siptrackerclk/metadata.json | 20 ++++++++++++++------ 1 file changed, 14 insertions(+), 6 deletions(-) diff --git a/apps/siptrackerclk/metadata.json b/apps/siptrackerclk/metadata.json index c1b62714d..e0d664338 100644 --- a/apps/siptrackerclk/metadata.json +++ b/apps/siptrackerclk/metadata.json @@ -1,6 +1,14 @@ -require("Storage").write("siptrackerclk.info",{ - "id":"h2osiptracker", - "name":"Water Sip Tracker Clock", - "type":"clock", - "src":"siptrackerclk.app.js" -}); +{ "id": "7chname", + "name": "My app's human readable name", + "shortName":"Short Name", + "version":"0.01", + "description": "A detailed description of my great app", + "icon": "app.png", + "tags": "", + "supports" : ["BANGLEJS2"], + "readme": "README.md", + "storage": [ + {"name":"7chname.app.js","url":"app.js"}, + {"name":"7chname.img","url":"app-icon.js","evaluate":true} + ] +} From e07748fda4488efc1ab0f6af1fcc776dfbca1df3 Mon Sep 17 00:00:00 2001 From: eleanor <44651387+elykittytee@users.noreply.github.com> Date: Thu, 23 Feb 2023 21:05:50 -0600 Subject: [PATCH 15/61] Create app-icon.js --- apps/siptrackerclk/app-icon.js | 1 + 1 file changed, 1 insertion(+) create mode 100644 apps/siptrackerclk/app-icon.js diff --git a/apps/siptrackerclk/app-icon.js b/apps/siptrackerclk/app-icon.js new file mode 100644 index 000000000..74b0ea6a9 --- /dev/null +++ b/apps/siptrackerclk/app-icon.js @@ -0,0 +1 @@ +require("heatshrink").decompress(atob("mUywMB/4AN+YFE/F/Aof+j4MEmYFExgSE4+PEgglE/H8CQYEBCQk/CQmPCQnHA4IkD84SD/HxCQf+vn/z4MCn1/CQfPj/8AoXn54SD/PjBAIEB/n5IwP+v0fnghCj/hz8///mj/+84cB/Pf//xDgP+BwP8+I0CAQIeCHwWPB4RRBDwQ+C/IeBBIP8g15I4WAgOeCoP+sE/DBR1DBII6CGISODUgQIBvBBCCgOfh5jBv/4sfwv/xw/4vl/j/4/F+YoRWBHAJpBN4T4CfQnB/wmBcAUAAof/8ARDABXwA=")) From acc3d9183e5e95b545abe1dcda9da0e8f6f3a4c8 Mon Sep 17 00:00:00 2001 From: eleanor <44651387+elykittytee@users.noreply.github.com> Date: Thu, 23 Feb 2023 21:12:06 -0600 Subject: [PATCH 16/61] Update metadata.json --- apps/siptrackerclk/metadata.json | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/apps/siptrackerclk/metadata.json b/apps/siptrackerclk/metadata.json index e0d664338..66cfec7ed 100644 --- a/apps/siptrackerclk/metadata.json +++ b/apps/siptrackerclk/metadata.json @@ -1,14 +1,16 @@ -{ "id": "7chname", - "name": "My app's human readable name", - "shortName":"Short Name", +{ "id": "siptrackerclk", + "name": "Water Sip Tracker Clock", + "shortName":"Sip Tracker Clock", "version":"0.01", - "description": "A detailed description of my great app", + "description": "I just want to track my sips of water", "icon": "app.png", - "tags": "", + "type": "clock", + "tags": "clock", "supports" : ["BANGLEJS2"], + "allow_emulator": true, "readme": "README.md", "storage": [ - {"name":"7chname.app.js","url":"app.js"}, - {"name":"7chname.img","url":"app-icon.js","evaluate":true} + {"name":"siptrackerclk.app.js","url":"app.js"}, + {"name":"siptrackerclk.img","url":"app-icon.js","evaluate":true} ] } From cffbcbd2a21029265a0cd8ae3248fde383257d98 Mon Sep 17 00:00:00 2001 From: eleanor <44651387+elykittytee@users.noreply.github.com> Date: Thu, 23 Feb 2023 21:13:08 -0600 Subject: [PATCH 17/61] Update README.md --- apps/siptrackerclk/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/siptrackerclk/README.md b/apps/siptrackerclk/README.md index 7b6b96723..34b9f7077 100644 --- a/apps/siptrackerclk/README.md +++ b/apps/siptrackerclk/README.md @@ -5,7 +5,7 @@ Made for Bangle.js 2 ![screenshot.png](https://github.com/elykittytee/BangleApps/blob/elykittytee-patch-1/apps/siptrackerclk/screenshot.png?raw=true) # Features -- BG changes based on time +- background changes based on time # Requests If you have any issues or would like to suggest a feature, @ me on Twitter. From c3e340c0101dcb25d55588f6521ae942f235dfe0 Mon Sep 17 00:00:00 2001 From: eleanor <44651387+elykittytee@users.noreply.github.com> Date: Thu, 23 Feb 2023 21:13:53 -0600 Subject: [PATCH 18/61] added screenshot --- apps/siptrackerclk/metadata.json | 1 + 1 file changed, 1 insertion(+) diff --git a/apps/siptrackerclk/metadata.json b/apps/siptrackerclk/metadata.json index 66cfec7ed..a29109053 100644 --- a/apps/siptrackerclk/metadata.json +++ b/apps/siptrackerclk/metadata.json @@ -8,6 +8,7 @@ "tags": "clock", "supports" : ["BANGLEJS2"], "allow_emulator": true, + "screenshots" : [ { "url":"screenshot.png" } ], "readme": "README.md", "storage": [ {"name":"siptrackerclk.app.js","url":"app.js"}, From 2d9ca7730ebde254e5eaa4453bcb70928e7332ff Mon Sep 17 00:00:00 2001 From: eleanor <44651387+elykittytee@users.noreply.github.com> Date: Thu, 23 Feb 2023 21:41:33 -0600 Subject: [PATCH 19/61] Update app.js --- apps/siptrackerclk/app.js | 17 +++++------------ 1 file changed, 5 insertions(+), 12 deletions(-) diff --git a/apps/siptrackerclk/app.js b/apps/siptrackerclk/app.js index 40950bc55..0f9f7bde9 100644 --- a/apps/siptrackerclk/app.js +++ b/apps/siptrackerclk/app.js @@ -10,7 +10,7 @@ const bx1 = 120; const by2 = 165; const bFull = 135; const bWidth = 25; -const offset = 30 +const offset = 30; var tap = 0;//tap counter var d = new Date(); @@ -34,8 +34,6 @@ var imgDsk = { palette : new Uint16Array([13269,65535,31702,25381,25401,42097,52019,15317,17365,37938,31670,29654,52428,40017,37907,19413]), buffer : require("heatshrink").decompress(atob("iIA/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4Aei93AAkAAwoA/AH4A/AHGHIH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4AdgAJIuEHJf4A/AH4A3w5A/ACt4xBYJxBM/ABWIK5JiBJn6uLAAJbBLQRfCAQRaDCQRwEN4YECEAQFCvANCvAUGEQY3ECAQfCAQRGEHgj/DIAY1DAHyPCABhjDAH4AX/BA/ACuPK/4AW/4ABLI+PBQJN/VxJXCAH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A0/e734KH3e7CxQVIBYQZBBRIwCA4QdKDRQDEJY5XDG4gwBAwRPFCoQMJBoQHCGQIEDAYIMCAgQCCSoyMHNwQMEGYoKDAH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4Am2UiAH4A/AH4A/AH4AflWqACeiGcgQIHpyT/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A9qtVBRElBYNWJ35WJqQKJAANmsRQ/UQ9WsxVJBYIABNBSu7JQRWOK+g1BVhkms1lfQIXFq1lKwYOBB4r1vK5YNCT4RNBBQUmBQYADMwRXxJAVWsS7LIgJWCCIZUFAAohKVlBFDA4QODTQL3DAASuDVQoQFK2TkCsQHCqRKHIw5WFK4pSq8zaCJwT0BGwY+CdIhWKMYR0DDwbPCAFAsERwJIGWYavJBQYUDKoyurIIQ9BIwo7LBRBuIV2A9CGYayBHgo7FJYdSMBIAGK9MuKwfmKwpXEKxNVZwwAKJj3uABpWCKgQABqw6DCI5nBBYRwDABVuHBwAdIgdWVgo6E8te9yuDMoQcFAAJeGK1ozFsqSGCARhCM4IDEEZRTG8tVVtQALM4llXoYCCFiBWBK85WOtwPEKQT3UKwNWCaAALDhRWTXZIANY4NWYSIAKqpXQAwwXCKxVeEAosHVgLCTKxYdc9yyHsp+EBoJWLVzXlG4RXcVw7zBIoZJGKoIOCKzaNEKzavGsoFEQBAUFR7QeD9OZAAueCQ60YtwoFKoodJ9IDCDIoRID4VpKwwAGCIQECChmWKooTHBwY0OABed7oABzx1BrIVNCIJWBHARqOIxh5EAGdWRx3mf4wAGVbQAdrJHNAGGd7oAB6tVAAVdBAQAPC4YABCRgrECRorUJ5QyFABIZJCLIA/AH4A/AH4Ai7oAO6ownFEAA/AH4A/AH4A/AH4A/AH4A/AH4A0rnMAH4A/AH4A/AAlEAH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4AppEzmdE/9DBIdPCAv0okz//0pASFAggYBCQP//80/H0AwIACmg1FAogeBE4OPFwI9Noc/HYISBoc85nMLIPDAQIABmAyCMYMzgc8Bok8AwQaB4lDpk0DQYOBCYYnBCgM8JwU0HAJfBmdACQgZB4fMCgJEDCQQ9CJYgOBAAw3DDgISBCgQTIAAxLCCiIvCJgYUQIgQAXDQZJPYIiSCGpgjEThYUFEhgcFZ4otOcwJWFLQgvKCgKAFIxI9EEgoKCXgYMC4YiBFIj1BngpFHQgMBCgRZDCYYdDF5QhBDASNFGYTODKIgYCBQSKIABYUCJwYTMFYRjEChhjFChwqDAH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4AGmAA=")) }; -var bg = [imgDay,imgNt,imgDsk]; - //TAP ALL THE THINGS Bangle.on('touch', (n, e) => { // <88, top @@ -68,13 +66,12 @@ function clearText(){ function clearBar(){ g.setColor(1,1,1).fillRect(bx1+1, bWidth, by2, by2); //meterwhite g.setColor(0x000).drawRect(bx1, bWidth, by2, by2); //meteroutline - g.clearRect(0,10,175,25); //textbox + g.clearRect(0,10,175,25); //textbox } //progress bar function boxTap(x, y) { - if (tap <= 135) { - //clear textbox, add progress bar + if (tap <= 135) { //clear textbox, add progress bar clearText(); g.setColor(0,0,1).fillRect(x+1, y - tap, y-1, y); tap+=3; @@ -84,7 +81,7 @@ function boxTap(x, y) { } } -function time() { +function drawTime() { var day = d.getDate(); var time = require("locale").time(d, 1); var date = require("locale").date(d); @@ -110,16 +107,12 @@ function go() { } else { g.drawImage(imgDay,0,20); } - g.setColor(1,1,1).fillRect(bx1+1, bWidth, by2, by2); //meterwhite g.setColor(0x000).drawRect(bx1, offset, by2, by2); //meteroutline g.clearRect(0,10,175,25); //textbox - time(); + drawTime(); } - -// g.clearRect(0,10,175,25); //textbox clear - //ready set go! g.clear(); Bangle.loadWidgets(); From 0ce0b9e22b6ad6d9e1f6752eca4154186c7ff906 Mon Sep 17 00:00:00 2001 From: olivierbarriere Date: Mon, 27 Mar 2023 11:28:35 -0400 Subject: [PATCH 20/61] Update metadata.json --- apps/widbatv/metadata.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/widbatv/metadata.json b/apps/widbatv/metadata.json index d4ef28315..74e374601 100644 --- a/apps/widbatv/metadata.json +++ b/apps/widbatv/metadata.json @@ -1,7 +1,7 @@ { "id": "widbatv", "name": "Battery Level Widget (Vertical)", - "version": "0.01", + "version": "0.02", "description": "Slim, vertical battery widget that only takes up 14px", "icon": "widget.png", "type": "widget", From 66e4a01bf18da642a636dc250c717431624ffd82 Mon Sep 17 00:00:00 2001 From: olivierbarriere Date: Mon, 27 Mar 2023 11:31:15 -0400 Subject: [PATCH 21/61] Vertical Battery Widget: make color depend on level --- apps/widbatv/widget.js | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/apps/widbatv/widget.js b/apps/widbatv/widget.js index cc52a0f8e..efc42fdad 100644 --- a/apps/widbatv/widget.js +++ b/apps/widbatv/widget.js @@ -14,6 +14,10 @@ WIDGETS["batv"]={area:"tr",width:14,draw:function() { } else { g.clearRect(x,y,x+14,y+24); g.setColor(g.theme.fg).fillRect(x+2,y+2,x+12,y+22).clearRect(x+4,y+4,x+10,y+20).fillRect(x+5,y+1,x+9,y+2); - g.setColor("#0f0").fillRect(x+4,y+20-(E.getBattery()*16/100),x+10,y+20); + var battery = E.getBattery(); + if (battery < 20) {g.setColor("#f00");} + else if (battery < 40) {g.setColor(g.theme.dark ? "#ff0" : "#f80");} + else {g.setColor("#0f0");} + g.fillRect(x+4,y+20-(E.getBattery()*16/100),x+10,y+20); } }}; From c8285a16b38b83b0040d2f28d402a1273415764b Mon Sep 17 00:00:00 2001 From: olivierbarriere Date: Mon, 27 Mar 2023 11:37:15 -0400 Subject: [PATCH 22/61] Update ChangeLog --- apps/widbatv/ChangeLog | 1 + 1 file changed, 1 insertion(+) diff --git a/apps/widbatv/ChangeLog b/apps/widbatv/ChangeLog index 55cda0f21..f7ced965b 100644 --- a/apps/widbatv/ChangeLog +++ b/apps/widbatv/ChangeLog @@ -1 +1,2 @@ 0.01: New widget +0.02: Make color depend on level From 6c4a19a132e7525ebbd612a263657636049e6481 Mon Sep 17 00:00:00 2001 From: eleanor <44651387+elykittytee@users.noreply.github.com> Date: Tue, 28 Mar 2023 11:37:38 -0500 Subject: [PATCH 23/61] deleted because it doesn't work ): --- apps/siptrackerclk/ChangeLog | 2 - apps/siptrackerclk/README.md | 17 ----- apps/siptrackerclk/app-icon.js | 1 - apps/siptrackerclk/app.js | 120 ------------------------------ apps/siptrackerclk/metadata.json | 17 ----- apps/siptrackerclk/screenshot.png | Bin 4119 -> 0 bytes 6 files changed, 157 deletions(-) delete mode 100644 apps/siptrackerclk/ChangeLog delete mode 100644 apps/siptrackerclk/README.md delete mode 100644 apps/siptrackerclk/app-icon.js delete mode 100644 apps/siptrackerclk/app.js delete mode 100644 apps/siptrackerclk/metadata.json delete mode 100644 apps/siptrackerclk/screenshot.png diff --git a/apps/siptrackerclk/ChangeLog b/apps/siptrackerclk/ChangeLog deleted file mode 100644 index 1da556cd4..000000000 --- a/apps/siptrackerclk/ChangeLog +++ /dev/null @@ -1,2 +0,0 @@ -23-02-23 -- New app~ diff --git a/apps/siptrackerclk/README.md b/apps/siptrackerclk/README.md deleted file mode 100644 index 34b9f7077..000000000 --- a/apps/siptrackerclk/README.md +++ /dev/null @@ -1,17 +0,0 @@ -# H2O Sip Tracker Watchface - -Made for Bangle.js 2 - -![screenshot.png](https://github.com/elykittytee/BangleApps/blob/elykittytee-patch-1/apps/siptrackerclk/screenshot.png?raw=true) - -# Features -- background changes based on time - -# Requests -If you have any issues or would like to suggest a feature, @ me on Twitter. - -# Attribution -- Royalty-free pixel backgrounds from [FreePik](https://www.freepik.com/) - -# Creator -[Eleanor Tayam](http://twitter.com/elykittytee) diff --git a/apps/siptrackerclk/app-icon.js b/apps/siptrackerclk/app-icon.js deleted file mode 100644 index 74b0ea6a9..000000000 --- a/apps/siptrackerclk/app-icon.js +++ /dev/null @@ -1 +0,0 @@ -require("heatshrink").decompress(atob("mUywMB/4AN+YFE/F/Aof+j4MEmYFExgSE4+PEgglE/H8CQYEBCQk/CQmPCQnHA4IkD84SD/HxCQf+vn/z4MCn1/CQfPj/8AoXn54SD/PjBAIEB/n5IwP+v0fnghCj/hz8///mj/+84cB/Pf//xDgP+BwP8+I0CAQIeCHwWPB4RRBDwQ+C/IeBBIP8g15I4WAgOeCoP+sE/DBR1DBII6CGISODUgQIBvBBCCgOfh5jBv/4sfwv/xw/4vl/j/4/F+YoRWBHAJpBN4T4CfQnB/wmBcAUAAof/8ARDABXwA=")) diff --git a/apps/siptrackerclk/app.js b/apps/siptrackerclk/app.js deleted file mode 100644 index 0f9f7bde9..000000000 --- a/apps/siptrackerclk/app.js +++ /dev/null @@ -1,120 +0,0 @@ -const storage = require('Storage'); -const locale = require("locale"); -require("FontDylex7x13").add(Graphics); -const nameFont= g.getFont(); - -const width = 175; -const height = 175; - -const bx1 = 120; -const by2 = 165; -const bFull = 135; -const bWidth = 25; -const offset = 30; - -var tap = 0;//tap counter -var d = new Date(); -var nowDate = d.getDate(); //today's date -var encourage = ["You\'re doing great!","Pas de deux it!","Amazing~"]; -//images -var imgDay = { - width : 175, height : 175, bpp : 8, - transparent : 254, - buffer : require("heatshrink").decompress(atob("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")) -}; -var imgNt = { - width : 175, height : 175, bpp : 4, - transparent : 1, - palette : new Uint16Array([4334,65535,6346,2155,44095,4333,13079,12982,65535,44671,6480,8658,10836,4399,6545,11097]), - buffer : require("heatshrink").decompress(atob("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")) -}; -var imgDsk = { - width : 175, height : 175, bpp : 4, - transparent : 1, - palette : new Uint16Array([13269,65535,31702,25381,25401,42097,52019,15317,17365,37938,31670,29654,52428,40017,37907,19413]), - buffer : require("heatshrink").decompress(atob("iIA/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4Aei93AAkAAwoA/AH4A/AHGHIH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4AdgAJIuEHJf4A/AH4A3w5A/ACt4xBYJxBM/ABWIK5JiBJn6uLAAJbBLQRfCAQRaDCQRwEN4YECEAQFCvANCvAUGEQY3ECAQfCAQRGEHgj/DIAY1DAHyPCABhjDAH4AX/BA/ACuPK/4AW/4ABLI+PBQJN/VxJXCAH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A0/e734KH3e7CxQVIBYQZBBRIwCA4QdKDRQDEJY5XDG4gwBAwRPFCoQMJBoQHCGQIEDAYIMCAgQCCSoyMHNwQMEGYoKDAH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4Am2UiAH4A/AH4A/AH4AflWqACeiGcgQIHpyT/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A9qtVBRElBYNWJ35WJqQKJAANmsRQ/UQ9WsxVJBYIABNBSu7JQRWOK+g1BVhkms1lfQIXFq1lKwYOBB4r1vK5YNCT4RNBBQUmBQYADMwRXxJAVWsS7LIgJWCCIZUFAAohKVlBFDA4QODTQL3DAASuDVQoQFK2TkCsQHCqRKHIw5WFK4pSq8zaCJwT0BGwY+CdIhWKMYR0DDwbPCAFAsERwJIGWYavJBQYUDKoyurIIQ9BIwo7LBRBuIV2A9CGYayBHgo7FJYdSMBIAGK9MuKwfmKwpXEKxNVZwwAKJj3uABpWCKgQABqw6DCI5nBBYRwDABVuHBwAdIgdWVgo6E8te9yuDMoQcFAAJeGK1ozFsqSGCARhCM4IDEEZRTG8tVVtQALM4llXoYCCFiBWBK85WOtwPEKQT3UKwNWCaAALDhRWTXZIANY4NWYSIAKqpXQAwwXCKxVeEAosHVgLCTKxYdc9yyHsp+EBoJWLVzXlG4RXcVw7zBIoZJGKoIOCKzaNEKzavGsoFEQBAUFR7QeD9OZAAueCQ60YtwoFKoodJ9IDCDIoRID4VpKwwAGCIQECChmWKooTHBwY0OABed7oABzx1BrIVNCIJWBHARqOIxh5EAGdWRx3mf4wAGVbQAdrJHNAGGd7oAB6tVAAVdBAQAPC4YABCRgrECRorUJ5QyFABIZJCLIA/AH4A/AH4Ai7oAO6ownFEAA/AH4A/AH4A/AH4A/AH4A/AH4A0rnMAH4A/AH4A/AAlEAH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4AppEzmdE/9DBIdPCAv0okz//0pASFAggYBCQP//80/H0AwIACmg1FAogeBE4OPFwI9Noc/HYISBoc85nMLIPDAQIABmAyCMYMzgc8Bok8AwQaB4lDpk0DQYOBCYYnBCgM8JwU0HAJfBmdACQgZB4fMCgJEDCQQ9CJYgOBAAw3DDgISBCgQTIAAxLCCiIvCJgYUQIgQAXDQZJPYIiSCGpgjEThYUFEhgcFZ4otOcwJWFLQgvKCgKAFIxI9EEgoKCXgYMC4YiBFIj1BngpFHQgMBCgRZDCYYdDF5QhBDASNFGYTODKIgYCBQSKIABYUCJwYTMFYRjEChhjFChwqDAH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4AGmAA=")) -}; -//TAP ALL THE THINGS -Bangle.on('touch', (n, e) => { - // <88, top - if (e.x > bx1 && e.y < by2) { //bar - //tap counter, then draw - boxTap(bx1, by2); - } - else { - clearText(); - g.setColor(0,0,0).setFont(nameFont).setFontAlign(0,0).drawString(getEncour(), width/2, 25); - setInterval(clearText,2000); - } -}); - -//getters -function getRandomInt(max) { - return Math.floor(Math.random() * max); -} - -function getEncour(){ //return string - let string; - return encourage[getRandomInt(encourage.length)]; -} - -//clear stuff -function clearText(){ - g.clearRect(0,10,175,offset-2); -} - -function clearBar(){ - g.setColor(1,1,1).fillRect(bx1+1, bWidth, by2, by2); //meterwhite - g.setColor(0x000).drawRect(bx1, bWidth, by2, by2); //meteroutline - g.clearRect(0,10,175,25); //textbox -} - -//progress bar -function boxTap(x, y) { - if (tap <= 135) { //clear textbox, add progress bar - clearText(); - g.setColor(0,0,1).fillRect(x+1, y - tap, y-1, y); - tap+=3; - } else { //HYDRATION ACHIEVED - g.setColor(0x000); - g.setColor(0,0,0).setFont(nameFont).setFontAlign(0,0).drawString("Hydration Achieved!", width/2, 25); - } -} - -function drawTime() { - var day = d.getDate(); - var time = require("locale").time(d, 1); - var date = require("locale").date(d); - var mo = require("date_utils").month(d.getMonth() + 1, 1); - - if (d.getDate() != nowDate){ //reset every new day - tap=0; - clearBar(); - } - - g.setFontAlign(1, 0); - g.setFont(nameFont, 5).drawString(time, 107, 80); - g.setFont(nameFont, 3).drawString(mo + " " + day, 100, 110); -} - - -function go() { - var currentHr = d.getHours(); - if (currentHr>=19 && currentHr<=8){ //bg change on time - g.drawImage(imgNt,0,20); - } else if (currentHr>=17){ - g.drawImage(imgDsk,0,20); - } else { - g.drawImage(imgDay,0,20); - } - g.setColor(1,1,1).fillRect(bx1+1, bWidth, by2, by2); //meterwhite - g.setColor(0x000).drawRect(bx1, offset, by2, by2); //meteroutline - g.clearRect(0,10,175,25); //textbox - drawTime(); -} - -//ready set go! -g.clear(); -Bangle.loadWidgets(); -Bangle.drawWidgets(); -go(); diff --git a/apps/siptrackerclk/metadata.json b/apps/siptrackerclk/metadata.json deleted file mode 100644 index a29109053..000000000 --- a/apps/siptrackerclk/metadata.json +++ /dev/null @@ -1,17 +0,0 @@ -{ "id": "siptrackerclk", - "name": "Water Sip Tracker Clock", - "shortName":"Sip Tracker Clock", - "version":"0.01", - "description": "I just want to track my sips of water", - "icon": "app.png", - "type": "clock", - "tags": "clock", - "supports" : ["BANGLEJS2"], - "allow_emulator": true, - "screenshots" : [ { "url":"screenshot.png" } ], - "readme": "README.md", - "storage": [ - {"name":"siptrackerclk.app.js","url":"app.js"}, - {"name":"siptrackerclk.img","url":"app-icon.js","evaluate":true} - ] -} diff --git a/apps/siptrackerclk/screenshot.png b/apps/siptrackerclk/screenshot.png deleted file mode 100644 index 5e486828e6b52c30f1b608bae247c7b2eb218b6f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4119 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 From aa030f2fe6f4b7246842def8672d48bab14bfaea Mon Sep 17 00:00:00 2001 From: eleanor <44651387+elykittytee@users.noreply.github.com> Date: Tue, 28 Mar 2023 11:40:08 -0500 Subject: [PATCH 24/61] Create ChangeLog --- apps/encourageclk/ChangeLog | 1 + 1 file changed, 1 insertion(+) create mode 100644 apps/encourageclk/ChangeLog diff --git a/apps/encourageclk/ChangeLog b/apps/encourageclk/ChangeLog new file mode 100644 index 000000000..09ae62ed3 --- /dev/null +++ b/apps/encourageclk/ChangeLog @@ -0,0 +1 @@ +0.01: New face :) From ce0c8fe43384c225e0eb4ae35873d614ba3c71ca Mon Sep 17 00:00:00 2001 From: eleanor <44651387+elykittytee@users.noreply.github.com> Date: Tue, 28 Mar 2023 11:40:24 -0500 Subject: [PATCH 25/61] Create README.md --- apps/encourageclk/README.md | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) create mode 100644 apps/encourageclk/README.md diff --git a/apps/encourageclk/README.md b/apps/encourageclk/README.md new file mode 100644 index 000000000..420eddbcc --- /dev/null +++ b/apps/encourageclk/README.md @@ -0,0 +1,18 @@ +# Encouragement & Positivity Clock + +Tap on the watch for a note of encouragement + +## Features + +Pretty backgrounds + +Screenshot 2023-03-28-2 +Screenshot 2023-03-28-1 + +## Requests + +If you have any issues or would like to suggest an encouraging note, please tweet me! + +## Creator + +[Eleanor Tayam](http://twitter.com/elykittytee) From c64dbef9e8bef06bd5b4d15d2b52cab88318cfd5 Mon Sep 17 00:00:00 2001 From: eleanor <44651387+elykittytee@users.noreply.github.com> Date: Tue, 28 Mar 2023 11:40:37 -0500 Subject: [PATCH 26/61] Create app-icon.js --- apps/encourageclk/app-icon.js | 1 + 1 file changed, 1 insertion(+) create mode 100644 apps/encourageclk/app-icon.js diff --git a/apps/encourageclk/app-icon.js b/apps/encourageclk/app-icon.js new file mode 100644 index 000000000..61f293184 --- /dev/null +++ b/apps/encourageclk/app-icon.js @@ -0,0 +1 @@ +require("heatshrink").decompress(atob("mUywMB/4AL/Ef//+g4FBCgP+gF//F4B4PHw/8vl/B4P4/8+n8An8fn+fj0AgPj8/nx0H/EcvPz40P//Bx888YFB/kx58xx4rB40z5HH/8//HE+Fj//P/8Ynkx//z/4cBzAdBAINn9xDBn//zv/LgIYB8YDCDAIUBA4IDBCAP5AYIYB8/+DwIUBBQIeBDAIKBBIIYC54JBDAXzBIYOCn/wgYOC5/8gAYFAAIYDAAIYCAwc/OoIACz5KCAAJKDAAIKBRwQeBv4rEn4HBAoQQBz4eDOwQAB+IaCdQQUDBIYOBOoJIB/BLCfIP8oYFBhAOBnAMBg6NBj+B/0HF4OP/EAg4lBHIPgCAJCDABHwA==")) From 86cbc0b81e071e20c0969e3f0abb1b9f6efa4240 Mon Sep 17 00:00:00 2001 From: eleanor <44651387+elykittytee@users.noreply.github.com> Date: Tue, 28 Mar 2023 11:40:53 -0500 Subject: [PATCH 27/61] Create app.js --- apps/encourageclk/app.js | 66 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 66 insertions(+) create mode 100644 apps/encourageclk/app.js diff --git a/apps/encourageclk/app.js b/apps/encourageclk/app.js new file mode 100644 index 000000000..4a13e9720 --- /dev/null +++ b/apps/encourageclk/app.js @@ -0,0 +1,66 @@ +require("FontHaxorNarrow7x17").add(Graphics); +require("FontDylex7x13").add(Graphics); + +const storage = require('Storage'); +const locale = require("locale"); +const dateutil = require("date_utils"); +const currentFont=g.getFont(); + +const width = 175; +const height = 175; +const offset = 25; + +var d = new Date(); +var nowDate = d.getDate(); //today's date +var encourage = ["you\'re doing great!","pas de deux it!","you\'re amazing~","you got dis","keep going","you\'re one\nin a melon!","we\'re rooting\nfor you!","believe in\nyourself","dance like\nno one\'s\nwatching"]; +var encouragementtest = "you\'re one\nin a melon!"; + +//TAP ALL THE THINGS +Bangle.on('touch', (n, e) => { + // <88, top + if (e.x > offset && e.y < height) { //bar + clearText(); + g.setColor(0,0,0); + g.setFont("Dylex7x13",2).setFontAlign(0,0).drawString(getEncour(), width/2, height/2); + setInterval(loader,3000); + } +}); + +//getters +function getRandomInt(max) { + return Math.floor(Math.random() * max); +} + +function getEncour(){ //return string + let rando = getRandomInt(encourage.length); + return encourage[rando]; +} + +//clear stuff +function clearText(){ + g.clearRect(0,offset*2,175,175-offset*2); + g.drawRect(0,offset*2,175,175-offset*2); +} + +function time() { + var time = locale.time(d, 1); + var date = locale.date(d); + var mo = dateutil.month(d.getMonth() + 1, 1); + g.setFont("HaxorNarrow7x17").setColor(0,0,0); + g.setFontAlign(0, 0).setFont(currentFont, 5).drawString(time, width/2, 100); + g.setFontAlign(-1,0).setFont(currentFont, 3).drawString(mo + " " + nowDate, width/2, 120); +} + + +function loader() { + g.clear(); + Bangle.drawWidgets(); + Bangle.loadWidgets(); + time(); +} + +//ready set go! +g.clear(); +Bangle.drawWidgets(); +Bangle.loadWidgets(); +time(); From c468e6428341676706120d6b7dfc9ecacf327576 Mon Sep 17 00:00:00 2001 From: eleanor <44651387+elykittytee@users.noreply.github.com> Date: Tue, 28 Mar 2023 11:41:12 -0500 Subject: [PATCH 28/61] Create metadata.json --- apps/encourageclk/metadata.json | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) create mode 100644 apps/encourageclk/metadata.json diff --git a/apps/encourageclk/metadata.json b/apps/encourageclk/metadata.json new file mode 100644 index 000000000..dcfd6fa64 --- /dev/null +++ b/apps/encourageclk/metadata.json @@ -0,0 +1,17 @@ +{ + "id": "encourageclk", + "name": "Encouragement & Positivity Clock", + "shortName":"Encouragement Clock", + "version": "0.01", + "description": "Tap on the watch for a note of encouragement", + "icon": "app.png", + "type": "clock", + "tags": "clock", + "supports": ["BANGLEJS2"], + "allow_emulator": true, + "readme":"README.md", + "storage": [ + {"name":"encourageclk.app.js","url":"app.js"}, + {"name":"encourageclk.img","url":"app-icon.js","evaluate":true} + ] +} From acdc21336905026e1c86ca1779f6871bcec16734 Mon Sep 17 00:00:00 2001 From: eleanor <44651387+elykittytee@users.noreply.github.com> Date: Tue, 28 Mar 2023 11:41:30 -0500 Subject: [PATCH 29/61] Add files via upload --- apps/encourageclk/app.png | Bin 0 -> 1180 bytes apps/encourageclk/screenshot.png | Bin 0 -> 4767 bytes 2 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 apps/encourageclk/app.png create mode 100644 apps/encourageclk/screenshot.png diff --git a/apps/encourageclk/app.png b/apps/encourageclk/app.png new file mode 100644 index 0000000000000000000000000000000000000000..0256b125dc6d79427c116d515d6a902cd3a5487a GIT binary patch literal 1180 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 Date: Tue, 28 Mar 2023 12:00:11 -0500 Subject: [PATCH 30/61] Delete app.png --- apps/encourageclk/app.png | Bin 1180 -> 0 bytes 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100644 apps/encourageclk/app.png diff --git a/apps/encourageclk/app.png b/apps/encourageclk/app.png deleted file mode 100644 index 0256b125dc6d79427c116d515d6a902cd3a5487a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1180 zcmV;N1Y`S&P)44(Z8emK(o0&h;M>X0?z#7z zeeZ7XCE-g>a(njLYp?H|wbogC?ZN}xUziT`0Q-T9z%5`DxD4zAUIAt%SjTkqO6Mh@ z4EzUN0QLee%a)q(BJc|^o^u@l9;$@s zJAr=-_<4BQoE^Z52r_SJ>{nn~7Li^rsEW9g#mce3uy28_db8%|k881M`n_CZ{lItL zyfNT&jTdn61peFYNNbkDNRqY=h^37m?MpA8InZkt7By?)=U=2|y0+{wL(T?)1s zxPXp93$WXJGfxC$oQ*$cP2T4%>Ie22?@h##sFjE#^NE)Y!vs(<*n2ZlY{`p>7Iv+6h@g+9vt!xaJNIlnP_#rk7CebY5%E3aQzFr& ziB}VRCsGiZqYO4CPbrL@THL<6GyxIh8K!4D1<~pifVGqzlSO2)^b8l>Ew1%a9!*5V z@Pl+&iIR)HL_t0oL`u^2ZV_Qu9$2~EY(#pb>u?d_a}stryP1e|NY~jS!b1|al-F!T z=1P~z(=yhx+*pK8Q7!t(^qz!Kv!F+L-=vS<1k^7_2oY85 u21fOJP#ZUsSreJc+htSCG2R2vDBJ-BQQ5qc3;&@20000 Date: Tue, 28 Mar 2023 12:00:24 -0500 Subject: [PATCH 31/61] 48x48 --- apps/encourageclk/app.png | Bin 0 -> 4031 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 apps/encourageclk/app.png diff --git a/apps/encourageclk/app.png b/apps/encourageclk/app.png new file mode 100644 index 0000000000000000000000000000000000000000..6dc6b92706a3b257749ec91337806655c3f371af GIT binary patch literal 4031 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 literal 0 HcmV?d00001 From ebb5d52079165bca2a44fb66d911101cb542885d Mon Sep 17 00:00:00 2001 From: eleanor <44651387+elykittytee@users.noreply.github.com> Date: Wed, 29 Mar 2023 10:07:48 -0500 Subject: [PATCH 32/61] Update app.js --- apps/encourageclk/app.js | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/apps/encourageclk/app.js b/apps/encourageclk/app.js index 4a13e9720..ca76add70 100644 --- a/apps/encourageclk/app.js +++ b/apps/encourageclk/app.js @@ -15,6 +15,13 @@ var nowDate = d.getDate(); //today's date var encourage = ["you\'re doing great!","pas de deux it!","you\'re amazing~","you got dis","keep going","you\'re one\nin a melon!","we\'re rooting\nfor you!","believe in\nyourself","dance like\nno one\'s\nwatching"]; var encouragementtest = "you\'re one\nin a melon!"; +var bgimg = { + width : 175, height : 175, bpp : 4, + transparent : -1, + palette : new Uint16Array([46452,38393,32024,42585,52984,46739,59130,21489,46543,21493,25358,52696,48564,61210,29944,46322]), + buffer : require("heatshrink").decompress(atob("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")) +}; + //TAP ALL THE THINGS Bangle.on('touch', (n, e) => { // <88, top @@ -46,9 +53,10 @@ function time() { var time = locale.time(d, 1); var date = locale.date(d); var mo = dateutil.month(d.getMonth() + 1, 1); + g.drawImage(bgimg,0,offset); g.setFont("HaxorNarrow7x17").setColor(0,0,0); - g.setFontAlign(0, 0).setFont(currentFont, 5).drawString(time, width/2, 100); - g.setFontAlign(-1,0).setFont(currentFont, 3).drawString(mo + " " + nowDate, width/2, 120); + g.setFontAlign(0, 0).setFont(currentFont, 7).drawString(time, width/2, 100); + g.setFontAlign(0,0).setFont(currentFont, 3).drawString(mo + " " + nowDate, width/2, 130); } From 4b95ad542707ac0b6e99068477bfb7519245f01d Mon Sep 17 00:00:00 2001 From: eleanor <44651387+elykittytee@users.noreply.github.com> Date: Wed, 29 Mar 2023 10:32:42 -0500 Subject: [PATCH 33/61] updated app.js - fixed a line in the encouragements - added the menu when you press a button --- apps/encourageclk/app.js | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/apps/encourageclk/app.js b/apps/encourageclk/app.js index ca76add70..9a3737df4 100644 --- a/apps/encourageclk/app.js +++ b/apps/encourageclk/app.js @@ -12,7 +12,7 @@ const offset = 25; var d = new Date(); var nowDate = d.getDate(); //today's date -var encourage = ["you\'re doing great!","pas de deux it!","you\'re amazing~","you got dis","keep going","you\'re one\nin a melon!","we\'re rooting\nfor you!","believe in\nyourself","dance like\nno one\'s\nwatching"]; +var encourage = ["you\'re doing\ngreat!","pas de deux it!","you\'re amazing~","you got dis","keep going","you\'re one\nin a melon!","we\'re rooting\nfor you!","believe in\nyourself","dance like\nno one\'s\nwatching"]; var encouragementtest = "you\'re one\nin a melon!"; var bgimg = { @@ -62,13 +62,11 @@ function time() { function loader() { g.clear(); + Bangle.setUI("clock"); Bangle.drawWidgets(); Bangle.loadWidgets(); time(); } //ready set go! -g.clear(); -Bangle.drawWidgets(); -Bangle.loadWidgets(); -time(); +loader(); From b665fff3c3b25716e0c05ed51f5ec7daf9a71061 Mon Sep 17 00:00:00 2001 From: eleanor <44651387+elykittytee@users.noreply.github.com> Date: Wed, 29 Mar 2023 10:47:09 -0500 Subject: [PATCH 34/61] reconverted 48x48 icon --- apps/distortclk/app-icon.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/distortclk/app-icon.js b/apps/distortclk/app-icon.js index c375de96e..56a3c6b6f 100644 --- a/apps/distortclk/app-icon.js +++ b/apps/distortclk/app-icon.js @@ -1 +1 @@ -require("heatshrink").decompress(atob("j0ewkBiIAxHIQMJiBJEIxAaCAIQfHDgIUFDwwNCHYgVFiAVBHYgIDEghKCCIQGCFYoaDAYgORGIJ2DBwYIBHgQOPgAOIPIYOGAgQOFFgh7DHZQeDBwhoFQgh3JEAgOFFoqkHYRzgOfx4bCJ4gNGSIaJEABA7EAGA")) +require("heatshrink").decompress(atob("mEwwMB/4AFgYCB4H//kAAoMAn/w+IFBx8P8fjAoPH4/n4/gg/j8/Px4rB+Pz58ch/wnHzz0wv/+hl5zlhDoOGnOY44FB8cZyOP/1/+OJwcfAoP44OGn4FB/lh5giBAIMz7n/AoP/nf4Aocf/IFDz5YBAoWP+YFD54FFMgIFD84FD84FM/0AApKfDApiaCAAJBCApKyCWgRlBAAWfOIIACj/8Aoc//g/BJ4KTBn4FBBIUfAoIbCx4CBFoUHAQPgDIMhAoOEV4NwVgMOn/4/jdBn8fDILpBUIfwh5TBIAYABA=")) From a8bfd90ef412cd051e3a16bc5c68932483247697 Mon Sep 17 00:00:00 2001 From: eleanor <44651387+elykittytee@users.noreply.github.com> Date: Wed, 29 Mar 2023 14:58:20 -0500 Subject: [PATCH 35/61] updated app.js added/fixed queuedraw --- apps/encourageclk/app.js | 26 ++++++++++++++++++-------- 1 file changed, 18 insertions(+), 8 deletions(-) diff --git a/apps/encourageclk/app.js b/apps/encourageclk/app.js index 9a3737df4..66789f617 100644 --- a/apps/encourageclk/app.js +++ b/apps/encourageclk/app.js @@ -49,7 +49,15 @@ function clearText(){ g.drawRect(0,offset*2,175,175-offset*2); } -function time() { +function queueDraw() { + if (drawTimeout) clearTimeout(drawTimeout); + drawTimeout = setTimeout(function() { + drawTimeout = undefined; + drawtime(); + }, 60000 - (Date.now() % 60000)); +} + +function drawtime() { var time = locale.time(d, 1); var date = locale.date(d); var mo = dateutil.month(d.getMonth() + 1, 1); @@ -59,14 +67,16 @@ function time() { g.setFontAlign(0,0).setFont(currentFont, 3).drawString(mo + " " + nowDate, width/2, 130); } - function loader() { - g.clear(); - Bangle.setUI("clock"); - Bangle.drawWidgets(); - Bangle.loadWidgets(); - time(); + drawtime(); + queueDraw(); } //ready set go! -loader(); +g.clear(); + +loader(); //drawthings + +Bangle.setUI("clock"); +Bangle.drawWidgets(); +Bangle.loadWidgets(); From 3bab49ea44b82c5e07dc6ea52b470b834813e2c8 Mon Sep 17 00:00:00 2001 From: eleanor <44651387+elykittytee@users.noreply.github.com> Date: Wed, 29 Mar 2023 14:59:59 -0500 Subject: [PATCH 36/61] Update app-icon.js --- apps/encourageclk/app-icon.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/encourageclk/app-icon.js b/apps/encourageclk/app-icon.js index 61f293184..56a3c6b6f 100644 --- a/apps/encourageclk/app-icon.js +++ b/apps/encourageclk/app-icon.js @@ -1 +1 @@ -require("heatshrink").decompress(atob("mUywMB/4AL/Ef//+g4FBCgP+gF//F4B4PHw/8vl/B4P4/8+n8An8fn+fj0AgPj8/nx0H/EcvPz40P//Bx888YFB/kx58xx4rB40z5HH/8//HE+Fj//P/8Ynkx//z/4cBzAdBAINn9xDBn//zv/LgIYB8YDCDAIUBA4IDBCAP5AYIYB8/+DwIUBBQIeBDAIKBBIIYC54JBDAXzBIYOCn/wgYOC5/8gAYFAAIYDAAIYCAwc/OoIACz5KCAAJKDAAIKBRwQeBv4rEn4HBAoQQBz4eDOwQAB+IaCdQQUDBIYOBOoJIB/BLCfIP8oYFBhAOBnAMBg6NBj+B/0HF4OP/EAg4lBHIPgCAJCDABHwA==")) +require("heatshrink").decompress(atob("mEwwMB/4AFgYCB4H//kAAoMAn/w+IFBx8P8fjAoPH4/n4/gg/j8/Px4rB+Pz58ch/wnHzz0wv/+hl5zlhDoOGnOY44FB8cZyOP/1/+OJwcfAoP44OGn4FB/lh5giBAIMz7n/AoP/nf4Aocf/IFDz5YBAoWP+YFD54FFMgIFD84FD84FM/0AApKfDApiaCAAJBCApKyCWgRlBAAWfOIIACj/8Aoc//g/BJ4KTBn4FBBIUfAoIbCx4CBFoUHAQPgDIMhAoOEV4NwVgMOn/4/jdBn8fDILpBUIfwh5TBIAYABA=")) From f7c65df902c7fdb5714b954939b134abac087413 Mon Sep 17 00:00:00 2001 From: eleanor <44651387+elykittytee@users.noreply.github.com> Date: Wed, 29 Mar 2023 15:21:26 -0500 Subject: [PATCH 37/61] forgot drawTimeout like a dummy --- apps/encourageclk/app.js | 1 + 1 file changed, 1 insertion(+) diff --git a/apps/encourageclk/app.js b/apps/encourageclk/app.js index 66789f617..01cfd7fbc 100644 --- a/apps/encourageclk/app.js +++ b/apps/encourageclk/app.js @@ -12,6 +12,7 @@ const offset = 25; var d = new Date(); var nowDate = d.getDate(); //today's date +var drawTimeout; var encourage = ["you\'re doing\ngreat!","pas de deux it!","you\'re amazing~","you got dis","keep going","you\'re one\nin a melon!","we\'re rooting\nfor you!","believe in\nyourself","dance like\nno one\'s\nwatching"]; var encouragementtest = "you\'re one\nin a melon!"; From 3e83f01306f8a0635b804d8353284f471937d871 Mon Sep 17 00:00:00 2001 From: eleanor <44651387+elykittytee@users.noreply.github.com> Date: Fri, 31 Mar 2023 14:50:54 -0500 Subject: [PATCH 38/61] updated app.js changed order of loaded widgets and drawing watchface --- apps/encourageclk/app.js | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/apps/encourageclk/app.js b/apps/encourageclk/app.js index 01cfd7fbc..8a2f60097 100644 --- a/apps/encourageclk/app.js +++ b/apps/encourageclk/app.js @@ -76,8 +76,8 @@ function loader() { //ready set go! g.clear(); -loader(); //drawthings - -Bangle.setUI("clock"); +Bangle.setUI("clock"); //load all the things Bangle.drawWidgets(); Bangle.loadWidgets(); + +loader(); //draw all the things From e677c52e37b9f5e49d0adcaf47c5d0f9ad7039ed Mon Sep 17 00:00:00 2001 From: 23RoAGX Date: Sat, 1 Apr 2023 16:47:54 +0200 Subject: [PATCH 39/61] New App: tinyCMC coinmarketcap client --- apps/tinycmc/ChangeLog | 2 + apps/tinycmc/README.md | 7 +++ apps/tinycmc/app-icon.js | 1 + apps/tinycmc/app.js | 118 ++++++++++++++++++++++++++++++++++++ apps/tinycmc/icon.png | Bin 0 -> 2687 bytes apps/tinycmc/interface.html | 63 +++++++++++++++++++ apps/tinycmc/metadata.json | 30 +++++++++ 7 files changed, 221 insertions(+) create mode 100644 apps/tinycmc/ChangeLog create mode 100644 apps/tinycmc/README.md create mode 100644 apps/tinycmc/app-icon.js create mode 100644 apps/tinycmc/app.js create mode 100644 apps/tinycmc/icon.png create mode 100644 apps/tinycmc/interface.html create mode 100644 apps/tinycmc/metadata.json diff --git a/apps/tinycmc/ChangeLog b/apps/tinycmc/ChangeLog new file mode 100644 index 000000000..46fdd1b1e --- /dev/null +++ b/apps/tinycmc/ChangeLog @@ -0,0 +1,2 @@ +0.01: New App +0.02: Set API Key through Apploader \ No newline at end of file diff --git a/apps/tinycmc/README.md b/apps/tinycmc/README.md new file mode 100644 index 000000000..42cbdf203 --- /dev/null +++ b/apps/tinycmc/README.md @@ -0,0 +1,7 @@ +# Tiny Coinmarketcap +A simple app using Gadgedtbridge internet access to fetch current crypto prices from Coinmarketcap. +I'm providing a "free-tier" API Key. + +TO-DOs: +- [X] Add own API Key option +- [ ] Add settings for Currency conversion \ No newline at end of file diff --git a/apps/tinycmc/app-icon.js b/apps/tinycmc/app-icon.js new file mode 100644 index 000000000..0c8a0226b --- /dev/null +++ b/apps/tinycmc/app-icon.js @@ -0,0 +1 @@ +require("heatshrink").decompress(atob("mEw4kA/4ACBIP/o8242462/k8/gtytlz1s+r2/gv/q9Zpv/m+02pj/AH4AqgMRBhURAAQWGqPxqPwA4UoloABkoLCAIQhIiMQgUo29mtfr6WIBogxDFwNBAIeKwd8x2Mud8lUhBolQLoYABrERjurs/S7F329rs+i+I+EC4JRFxl+lUmvmGAIWKkJhGJ4lI01y2+3s4BB1s7s+o+MVMAhPEll7kd+uYBCvgBB7khyIRCL4cZiMS7YuCAAxnBSAsBJoWKl0sLYYBFluBL4iPCiuNsRdEAIlr3GBR4iQBJoMs7pdEAIjDBkK/ESAUY665BABNn7AvFkWBlEsXYoBFMAMlkPwC4UYRwOru5ZDMY+iitBF4MoPAOBxsjXoktAYMoYYcowOBwEokAXBiq+BL4eywWH2WHA4VrYAMViECgEgYAOIxhXDlF8k0oM4eDxrABkReBkEIj/y1ZVCsRjB2UnL4tYimCO4UBoOdlhdCveDAYMuYId8kq/DGIOI/Hyw6MDAA9t7FI/HwJAUBqOBll7X5WK+PxqK/DgMRimNsS7HAINm3DuBd4hfB+ONxhZEAIl8lVBL4YXCjLwB7eyLxFn7AvHJ4PxlS7BLo2OvmBqJfHAANC02yLotrs+iiMYB4IWCL4QgByMsvlzXYlz7UhLoIBBC4cADwMViNS7drFQNnAYXSFwZeDAAJPCyPxlEsFgIuClouBBoPxRwZgEGAMYwWI81n9sikA9CFwwwCKIWRyOFlEtlANEoAWGMIYyDisVCBAAHKYRjBqOAC6AyECqQA/AH4AJA==")) \ No newline at end of file diff --git a/apps/tinycmc/app.js b/apps/tinycmc/app.js new file mode 100644 index 000000000..07a56e494 --- /dev/null +++ b/apps/tinycmc/app.js @@ -0,0 +1,118 @@ +let settings = require("Storage").readJSON("tinycmc.json", 1); +const apiKey = settings.apikey || null; +const cmcBase = 'https://pro-api.coinmarketcap.com/'; +const version = ['v1', 'v2']; +const path = { + latest: '/cryptocurrency/listings/latest', + quote: '/cryptocurrency/quotes/latest' +}; +let page = 0; +function displayLatest(offset) { + g.clear(); + if (page === 0) { + E.showMessage('Getting Top 10'); + } else { + E.showMessage(`Getting Top ${offset} to ${offset + 9}`); + } + + const uri = offset ? `${cmcBase}${version[0]}${path.latest}?convert=EUR&limit=10&start=${offset}` : `${cmcBase}${version[0]}${path.latest}?convert=EUR&limit=10`; + Bangle.http(uri, + { + method: 'GET', + headers: { + "X-CMC_PRO_API_KEY": apiKey, + } + }).then(data=>{ + const result = JSON.parse(data.resp).data; + let menu = { + "" : { title : "-- Select --" }, + }; + //FIXME: Menu can also take an array of items, this would be easier to compose using map + result.forEach(listing => { + menu[listing.name] = { + title: `${listing.cmc_rank}: ${listing.symbol} ${Number(listing.quote.EUR.percent_change_24h).toFixed(3)}`, + onchange: function() { E.showMenu(); displayQuote(listing.symbol);} }; + }); + menu.Next = function() { + E.showMenu(); + g.clear(); + page = page + 1; + displayLatest((page * 10) + 1); + }; // remove the menu + menu.Exit = function() { + E.showMenu(); + g.clear(); + Bangle.showClock(); + }; // remove the menu + g.clear(); + E.showMenu(menu); + setWatch(() => { + g.clear(); + displayMenu(); + }, BTN, {edge:"rising", debounce:50, repeat:true}); +}).catch(error=>{ + console.log('Error'); + console.log(error); + E.showMessage(`${error}\nTo go back press BTN`); + setWatch(() => { + g.clear(); + displayMenu(); + }, BTN, {edge:"rising", debounce:50, repeat:true}); + }); +} + +function displayQuote(symb) { + g.clear(); + E.showMessage(`Getting latest for ${symb}`); + Bangle.http(`${cmcBase}${version[1]}${path.quote}?symbol=${symb}&convert=EUR`, + { + method: 'GET', + headers: { + "X-CMC_PRO_API_KEY": apiKey, + } + }).then(data=>{ + g.clear(); + const result = JSON.parse(data.resp).data[symb][0]; + E.showMessage(`#${result.cmc_rank}: ${result.symbol}\n${Number(result.quote.EUR.price).toFixed(2)}\n%24h: +${result.quote.EUR.percent_change_24h}`); + setWatch(() => { + g.clear(); + displayMenu(); + }, BTN, {edge:"rising", debounce:50, repeat:true}); +}).catch(error=>{ + E.showMessage(`${error}\nTo go back press BTN`); + setWatch(() => { + g.clear(); + displayMenu(); + }, BTN, {edge:"rising", debounce:50, repeat:true}); + }); +} + +function displayMenu() { + if (!apiKey) { + E.showMessage("Please provide a Coinmarketcap API Key"); + } else { + // Actually display the menu + E.showMenu({ + "" : { title : "-- Select --" }, // options + "Latest": function() { E.showMenu(); displayLatest(); }, + "BTC" : function() { E.showMenu(); displayQuote('BTC'); }, + "ETH" : function() { E.showMenu(); displayQuote('ETH'); }, + "XMR" : function() { E.showMenu(); displayQuote('XMR'); }, + "ADA" : function() { E.showMenu(); displayQuote('ADA'); }, + "DOGE" : function() { E.showMenu(); displayQuote('DOGE'); }, + "LTC" : function() { E.showMenu(); displayQuote('LTC'); }, + "Exit" : function() { + E.showMenu(); + g.clear(); + Bangle.showClock(); + }, // remove the menu + }); + } +} + +function main () { + displayMenu(); +} + +main (); diff --git a/apps/tinycmc/icon.png b/apps/tinycmc/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..2038315e018e2db7313ee6c8bceed9d273047fc4 GIT binary patch literal 2687 zcmV-_3V`*AP)uHXsT{MS(^@821%HQ4p6HMHImeL_k?&-&Yl+6j z-l929o|1VkUIp`sw+PbaczdM}qCERzv`eA8F9O^3NPFt-uu{zc=1`{N#+;nVV%+Nu^j?(#e4} zF71L|S|xNNA3`^}a2OFLDC7<#M-epn9MhPBtG@XP`ay~XjKY(d@Hx~LQ5cpGA68=IX@S(ChUkTsRPOMF9fgq^? zCM8{1`A`n~kaSod^FwG-YX6C+XX5VTN1Bw`JIaiRz>%@Qr{vv-#lh3C4a?@7a{ieJ z%yYXA{W#gUzz?1T$=17y{_pXPFe&PQ`Q19$2d6@~+Z!d%pP;h#IXb&rG-3gy9}Xix zVQTfz7kYZzkaYk4pyRf+ll?lm!S-?jR!N$%=t>&q9lQpE*f#^uD+y#$bSmE^7Q_Bp z0#@(w8Wk``M8OuGDAfKbP5R%!ONtH|E=I%*+Wnc32y8rc73*Uk!XT#>Go8F)5YzPY z!4I5DiWJL>l$zY>0vJ41g3q#mV*!nCvy>pMH=0p(zgbliGEx& zOp3c2VG=k$Eu4s==Hc=iVy#0Wr*0l7d=D zQK>LLa1t--tN01@DgVPufHLb}$c$dqHPsFaXS>e?!0voF)?`$0j=SjM{dYpZAfbiw zNiS?~<-*=C3_)>;gE$5-F*7F*{sS)oHi8q9%cqDOa4sy8OD;co710whKcyI`GEg7p`pAll){VK^Ha35F>qJDU-x(FmT6$Ir?SoxX7kt;!~5 zYpANLrgVRVJ60At7hcL97m&rF70|m~Gx`}h{^Bsr$<8RR1C|+;av2Os+2qO;oJ zb0*eqNB>dRSj+jr)9Omxee@89&hD@a&4e+Xz#{(~t-y7I%Q0Q-iP^jSFw^BEX1Jb) zUPLVic=n!4nC^HCivlGY=L=FAVU{Q52$;HhaJD~G%B!9QF`QFG_O4U~AMZZ}OP3Fc zQT$hCVoQ4PMMZ7pE0zfhpOhlIKmvi|A&9ByGNsx@kg3od3S*nG@WMUlSZ{}ZloYx* z%AvE?l_RylHw%-Nt;a&YT&)Taq&2}Jx0)lcV!J1ok%x+JSY#%{I>X53gF!Q5-4mTc z1v$z-B4L=CpZ6;5K|W%#vJsk?3O$GY{XRg6#xO_8zd336pJrnG%PV5kGp6}TD{RR5 z8^<&~L8gq0cD7d&vE0=i498H}d+u@}!>VIp`|*!H;NUPtBwqeHl-7SR5W3`Tjd)R8 zg*Cg6L3}lds~n9AIyG)S|71LLL!ONK|2LN((FtUZ?K`oo+-}8p2}Q8;kA%mi>wH-_ zydSsyiZ4ZC@q488XH(3`kA@ zaAx$i=M^jpc<@%i>y!44OS?Jq*%O(Kp1wAI0xCtR)0Btx@6}^TLMdjuocQ@=1%Vf2G;uxhh8PK)0wZzwQjoS%I#nwHwOX;3z4*ND1>&hD zXZ^s-rh1M*-s2)_YA7pHh+A3M%H2B5A`*JxRX+*59+edgJi8EBlU@Ob%Q46;E=Dgk zGprk9ai7P8&TA#m1LdTVlh|Sdr@&0fc&j@$Q>0)GJ-a@cf94Jhl3L#Yyo{2blvkp!Q!z>x6bvDm}>K@yRkuat8sF39LYHn@N)XXHj3r%^lsX{DYJnkTSHoPYGz;4Y-&soW z-a5Gy*4_bF?&5)}m(~5DyIYQ3KLk)0DC5z-V$GP~*&vp`V$Qs!h_rXMph+%8b$!h+GDD^0+0&Gz_TFE7W480txk6{n{p`COtdZ_j zD>smKGKh?tj|>a9%=ws!$yysJnlvivo23VwkKg=dKx-Q8cLDZ`4VSf53P0`_7PTVj tM@eSMhSgN;y + + + + +

Set Coinmarketcap API key

+

+ +

Where to get your personal API key?

+

Go to https://coinmarketcap.com/api/ and sign up for a free account.
+ After registration you can login and obtain your personal API key.

+ + + + + + + diff --git a/apps/tinycmc/metadata.json b/apps/tinycmc/metadata.json new file mode 100644 index 000000000..14963e610 --- /dev/null +++ b/apps/tinycmc/metadata.json @@ -0,0 +1,30 @@ +{ + "id": "tinycmc", + "name": "Tiny CMC", + "shortName":"tinycmc", + "icon": "icon.png", + "version": "0.02", + "description": "TinyCMC is a bangle.js Coinmarketcap API client", + "type": "app", + "tags": "tools", + "supports": [ + "BANGLEJS2" + ], + "allow_emulator": false, + "interface": "interface.html", + "readme": "README.md", + "data": [ + {"name":"tinycmc.json"} + ], + "storage": [ + { + "name": "tinycmc.app.js", + "url": "app.js" + }, + { + "name": "tinycmc.img", + "url": "app-icon.js", + "evaluate": true + } + ] +} \ No newline at end of file From d758d655b54094bd1b55f7dee493f7ec84471a86 Mon Sep 17 00:00:00 2001 From: thyttan <6uuxstm66@mozmail.com⁩> Date: Sat, 1 Apr 2023 17:19:46 +0200 Subject: [PATCH 40/61] Add longpressbuzz app (boot code) --- apps/longpressbuzz/ChangeLog | 1 + apps/longpressbuzz/README.md | 15 +++++++++++++++ apps/longpressbuzz/app.png | Bin 0 -> 1620 bytes apps/longpressbuzz/boot.js | 6 ++++++ apps/longpressbuzz/metadata.json | 14 ++++++++++++++ 5 files changed, 36 insertions(+) create mode 100644 apps/longpressbuzz/ChangeLog create mode 100644 apps/longpressbuzz/README.md create mode 100644 apps/longpressbuzz/app.png create mode 100644 apps/longpressbuzz/boot.js create mode 100644 apps/longpressbuzz/metadata.json diff --git a/apps/longpressbuzz/ChangeLog b/apps/longpressbuzz/ChangeLog new file mode 100644 index 000000000..5560f00bc --- /dev/null +++ b/apps/longpressbuzz/ChangeLog @@ -0,0 +1 @@ +0.01: New App! diff --git a/apps/longpressbuzz/README.md b/apps/longpressbuzz/README.md new file mode 100644 index 000000000..7f094e191 --- /dev/null +++ b/apps/longpressbuzz/README.md @@ -0,0 +1,15 @@ +# Long Press, Buzz! + +Buzz on long press (assumed and hardcoded to 1500ms) to indicate the watch will be reinitiated per your command. + +## Usage + +Just install and it will run as boot code. + +## Requests + +Mention @[thyttan](https://github.com/thyttan) in an issue to the official [BangleApps repository](https://github.com/espruino/BangleApps/issues) for bug reports and feature requests. + +## Creator + +[thyttan](https://github.com/thyttan) diff --git a/apps/longpressbuzz/app.png b/apps/longpressbuzz/app.png new file mode 100644 index 0000000000000000000000000000000000000000..582cb2e0853a5a2899a3afbd7eb19cde2ee7f6a0 GIT binary patch literal 1620 zcmV-a2CMmrP)1gXjloC|3_d8m;N2OpV(|i0q4YwBna<2! zK9thw%-*|urnNbV{Gax^?eD+#{x0kLJ~)lj_;W+1>qV*k8akT^^dvctZccUyj4}H~#M%Wwee_v` zHMv7o%BM8@dBrLshn{wGD9BDl?^eV5vSM3T96;NnHvtc6La=(qzq)xrX1d8bK-TN- zrd_f$_O`9nEmS+_S7HTXK<&u;LDIW|qlN&KJvM}tt6TVVqL-AvNv`B*{NzNpBfSQwQP5~Sf(Dp@Vq1+3Q`N9wBQN2`J_?M^u0FIMlt?p^8 z%U3%80kIwg!T{E9<8J18S&$k1`eO)@HP+=TZKo(z3_A3VFYJB=sn`2^Q$mRE>02(+W)np;)L1!GUvU2{O{<&F_nE6Qe#D~Xf|dD z+?d3-D1(IUiL`C2;PPv4CKw8H)v7h8^obJ&Z6D0CjVUe8Xq_NAymxUyPAMU^CCrIu z%1M71EC`5o2if_~7E&h??0jeQ1Y3N6p?}G72FmS*)xQD)%wBE=2tW6@(+MTi!fk9H1pWKew2(jTXVu4%vk26QvSQCbGmk`Z)Y! zBIhh)6vG2)h6mF8wC^|l$M(Eo9D?JiW}=_T2jUA>LC80foTera{^p)Wi`>}Gf;(|ZwEZQ zS^k|*9wyt=f4ZOo!xty7{%}HKD9tBZ50g$=%v&&vMa!#@Nsf>EkEEDA*ST6fiC+An zsNK1#>!x0obq@j$QqYU-ad3ZvbjqUU+%iw(0WahgmHV6yeLWqoYkSl4pzFQ(_Vp&I ztO{WI-48rGLwQb?#vgVvduyd9_6W)rFRoQJq3I(J?{Xmin45#=3l9BmL6Bp<*MZej zrsWN7oRPUr7IvrHoIHOjS=gPTCw>d)^LQK+B|=f2qbGjrWaOd5D<<9Dv>MTW0X3z> zyPy}9`<>1~?NCx@m8G$_@rRTy5zH12YM&P)=tU+L^fgY z^0Z&_6^qdVuwgN3wt_Ze(10?J@%{C2grBk42hsu74qEo^nd&v`X`IHN9lrxzS~GeF S(*#!l0000 Date: Sat, 1 Apr 2023 17:43:37 +0200 Subject: [PATCH 41/61] tweak buzz lenght and strength --- apps/longpressbuzz/boot.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/longpressbuzz/boot.js b/apps/longpressbuzz/boot.js index 1a859a381..42cef9890 100644 --- a/apps/longpressbuzz/boot.js +++ b/apps/longpressbuzz/boot.js @@ -1,6 +1,6 @@ let btnLoadTimeout = 1500; //Bangle.getOptions().btnLoadTimeout; // Hardcode value to minimize impact on load time at boot. Change to the commented out code to couple it to the actual system setting in the options object. let buzzTimeout; -setWatch(function(e) { buzzTimeout = setTimeout(Bangle.buzz, btnLoadTimeout-100, 30, 0.30); }, BTN, { +setWatch(function(e) { buzzTimeout = setTimeout(Bangle.buzz, btnLoadTimeout-100, 45, 0.35); }, BTN, { repeat:true, edge:'rising' }); setWatch(function(e) { if (buzzTimeout) clearTimeout(buzzTimeout); }, BTN, { repeat:true, edge:'falling' }); From d410c5acad3ff6ffd1f22f9a7bb690b4884cdadd Mon Sep 17 00:00:00 2001 From: thyttan <6uuxstm66@mozmail.com⁩> Date: Sat, 1 Apr 2023 22:25:15 +0200 Subject: [PATCH 42/61] add tag system --- apps/longpressbuzz/metadata.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/longpressbuzz/metadata.json b/apps/longpressbuzz/metadata.json index 1bc74650b..58b8f7cef 100644 --- a/apps/longpressbuzz/metadata.json +++ b/apps/longpressbuzz/metadata.json @@ -5,7 +5,7 @@ "description": "Buzz on long press (assumed and hardcoded to 1500ms) to indicate the watch will be reinitiated per your command.", "icon": "app.png", "type": "bootloader", - "tags": "", + "tags": "system", "supports" : ["BANGLEJS2"], "readme": "README.md", "storage": [ From b2ae41c1292afb8b805957c3c3b42f55290e618c Mon Sep 17 00:00:00 2001 From: Erik Andresen Date: Mon, 3 Apr 2023 20:04:06 +0200 Subject: [PATCH 43/61] grocery interface: Automatically scroll down on add --- apps/grocery/interface.html | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/apps/grocery/interface.html b/apps/grocery/interface.html index 65528c8e6..58ab2a484 100644 --- a/apps/grocery/interface.html +++ b/apps/grocery/interface.html @@ -46,7 +46,6 @@ var $name = document.getElementById('add_product_name') var $form = document.getElementById('add_product_form') - var $button = document.getElementById('add_product_button') var $quantity = document.getElementById('add_product_quantity') var $list = document.getElementById('products') var $reset = document.getElementById('reset') @@ -68,7 +67,8 @@ ok: false }) - renderProducts() + renderProducts(); + window.scrollTo(0, document.body.scrollHeight); $name.value = '' $quantity.value = 1 }) From cc7d5d2b4055847de1c483ab696e919f2e16e3fd Mon Sep 17 00:00:00 2001 From: eleanor <44651387+elykittytee@users.noreply.github.com> Date: Mon, 3 Apr 2023 14:27:26 -0500 Subject: [PATCH 44/61] update app.js removed `Bangle.setUI("clock"); ` --- apps/encourageclk/app.js | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/apps/encourageclk/app.js b/apps/encourageclk/app.js index 8a2f60097..4dacd1918 100644 --- a/apps/encourageclk/app.js +++ b/apps/encourageclk/app.js @@ -76,8 +76,7 @@ function loader() { //ready set go! g.clear(); -Bangle.setUI("clock"); //load all the things -Bangle.drawWidgets(); +Bangle.drawWidgets(); //load all the things Bangle.loadWidgets(); loader(); //draw all the things From b33d90963995f7af7b8f658203547387981e5b96 Mon Sep 17 00:00:00 2001 From: eleanor <44651387+elykittytee@users.noreply.github.com> Date: Mon, 3 Apr 2023 14:44:35 -0500 Subject: [PATCH 45/61] updated app.js fix: time not updating --- apps/encourageclk/app.js | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/apps/encourageclk/app.js b/apps/encourageclk/app.js index 4dacd1918..79ed3038b 100644 --- a/apps/encourageclk/app.js +++ b/apps/encourageclk/app.js @@ -54,22 +54,21 @@ function queueDraw() { if (drawTimeout) clearTimeout(drawTimeout); drawTimeout = setTimeout(function() { drawTimeout = undefined; - drawtime(); + draw(); }, 60000 - (Date.now() % 60000)); } -function drawtime() { +function draw() { var time = locale.time(d, 1); var date = locale.date(d); var mo = dateutil.month(d.getMonth() + 1, 1); - g.drawImage(bgimg,0,offset); + + g.drawImage(bgimg,0,offset); //bg g.setFont("HaxorNarrow7x17").setColor(0,0,0); g.setFontAlign(0, 0).setFont(currentFont, 7).drawString(time, width/2, 100); g.setFontAlign(0,0).setFont(currentFont, 3).drawString(mo + " " + nowDate, width/2, 130); -} - -function loader() { - drawtime(); + + Bangle.drawWidgets(); //redraw queueDraw(); } @@ -79,4 +78,4 @@ g.clear(); Bangle.drawWidgets(); //load all the things Bangle.loadWidgets(); -loader(); //draw all the things +draw(); //draw all the things From 2f7b2e8e1511de873634f8438ebbddc090a5a615 Mon Sep 17 00:00:00 2001 From: eleanor <44651387+elykittytee@users.noreply.github.com> Date: Mon, 3 Apr 2023 14:46:21 -0500 Subject: [PATCH 46/61] undeleted and fixed organization of loading --- apps/encourageclk/app.js | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/apps/encourageclk/app.js b/apps/encourageclk/app.js index 79ed3038b..7dfdc0dad 100644 --- a/apps/encourageclk/app.js +++ b/apps/encourageclk/app.js @@ -75,7 +75,8 @@ function draw() { //ready set go! g.clear(); -Bangle.drawWidgets(); //load all the things +Bangle.setUI("clock"); Bangle.loadWidgets(); +Bangle.drawWidgets(); draw(); //draw all the things From 47bd0a1aeac825299031b120b30dfdc555006d3f Mon Sep 17 00:00:00 2001 From: eleanor <44651387+elykittytee@users.noreply.github.com> Date: Mon, 3 Apr 2023 14:47:01 -0500 Subject: [PATCH 47/61] fixed setInterval loader() to draw() --- apps/encourageclk/app.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/encourageclk/app.js b/apps/encourageclk/app.js index 7dfdc0dad..7ff3e20d5 100644 --- a/apps/encourageclk/app.js +++ b/apps/encourageclk/app.js @@ -30,7 +30,7 @@ Bangle.on('touch', (n, e) => { clearText(); g.setColor(0,0,0); g.setFont("Dylex7x13",2).setFontAlign(0,0).drawString(getEncour(), width/2, height/2); - setInterval(loader,3000); + setInterval(draw,3000); } }); From cd8de2b1ccefe81b3734b89bd01e54007aa556a6 Mon Sep 17 00:00:00 2001 From: eleanor <44651387+elykittytee@users.noreply.github.com> Date: Tue, 4 Apr 2023 09:42:56 -0500 Subject: [PATCH 48/61] Update ChangeLog --- apps/encourageclk/ChangeLog | 1 + 1 file changed, 1 insertion(+) diff --git a/apps/encourageclk/ChangeLog b/apps/encourageclk/ChangeLog index 09ae62ed3..3a21fc294 100644 --- a/apps/encourageclk/ChangeLog +++ b/apps/encourageclk/ChangeLog @@ -1 +1,2 @@ 0.01: New face :) +0.02: code improvements From 08e7d14b084b92d9e952df7d57e40c90a5cb7f29 Mon Sep 17 00:00:00 2001 From: eleanor <44651387+elykittytee@users.noreply.github.com> Date: Tue, 4 Apr 2023 09:43:33 -0500 Subject: [PATCH 49/61] updated to ChangeLog 0.02 --- apps/encourageclk/metadata.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/encourageclk/metadata.json b/apps/encourageclk/metadata.json index dcfd6fa64..bc17d9c8d 100644 --- a/apps/encourageclk/metadata.json +++ b/apps/encourageclk/metadata.json @@ -2,7 +2,7 @@ "id": "encourageclk", "name": "Encouragement & Positivity Clock", "shortName":"Encouragement Clock", - "version": "0.01", + "version": "0.02", "description": "Tap on the watch for a note of encouragement", "icon": "app.png", "type": "clock", From ce144e05ffaba3bc41b4cedc2601303b3a828963 Mon Sep 17 00:00:00 2001 From: eleanor <44651387+elykittytee@users.noreply.github.com> Date: Tue, 4 Apr 2023 10:02:35 -0500 Subject: [PATCH 50/61] reordered app.js again --- apps/encourageclk/app.js | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/apps/encourageclk/app.js b/apps/encourageclk/app.js index 7ff3e20d5..c56064ee9 100644 --- a/apps/encourageclk/app.js +++ b/apps/encourageclk/app.js @@ -58,7 +58,7 @@ function queueDraw() { }, 60000 - (Date.now() % 60000)); } -function draw() { +function time(){ var time = locale.time(d, 1); var date = locale.date(d); var mo = dateutil.month(d.getMonth() + 1, 1); @@ -67,16 +67,18 @@ function draw() { g.setFont("HaxorNarrow7x17").setColor(0,0,0); g.setFontAlign(0, 0).setFont(currentFont, 7).drawString(time, width/2, 100); g.setFontAlign(0,0).setFont(currentFont, 3).drawString(mo + " " + nowDate, width/2, 130); - - Bangle.drawWidgets(); //redraw +} + +function draw() { + time(); queueDraw(); } //ready set go! g.clear(); +draw(); //draw all the things + Bangle.setUI("clock"); Bangle.loadWidgets(); Bangle.drawWidgets(); - -draw(); //draw all the things From bdd0d731013a59129ab0544d448d25ed0421d73d Mon Sep 17 00:00:00 2001 From: eleanor <44651387+elykittytee@users.noreply.github.com> Date: Tue, 4 Apr 2023 10:12:25 -0500 Subject: [PATCH 51/61] messed up and fixed again ): --- apps/encourageclk/app.js | 23 +++++++---------------- 1 file changed, 7 insertions(+), 16 deletions(-) diff --git a/apps/encourageclk/app.js b/apps/encourageclk/app.js index c56064ee9..79d356af3 100644 --- a/apps/encourageclk/app.js +++ b/apps/encourageclk/app.js @@ -14,7 +14,6 @@ var d = new Date(); var nowDate = d.getDate(); //today's date var drawTimeout; var encourage = ["you\'re doing\ngreat!","pas de deux it!","you\'re amazing~","you got dis","keep going","you\'re one\nin a melon!","we\'re rooting\nfor you!","believe in\nyourself","dance like\nno one\'s\nwatching"]; -var encouragementtest = "you\'re one\nin a melon!"; var bgimg = { width : 175, height : 175, bpp : 4, @@ -22,7 +21,6 @@ var bgimg = { palette : new Uint16Array([46452,38393,32024,42585,52984,46739,59130,21489,46543,21493,25358,52696,48564,61210,29944,46322]), buffer : require("heatshrink").decompress(atob("1UiAAUZ1QGEAAUhzWvBI0izIAY7tm7vWswAGtvTCo+Q7e23e263dDgNtDgVq0RCD9Wq1xMGl2qCAgJDKzGbHAI/BKw9mlIWHle7AAIXDAQJ1CU42quKvH1UhK8GS7u3lqXCWYnWDBcG3e9te77vb3oZBVwoABy6lIvRhHl3uABXpHpXiSgOy83bTYRaC6YYB2ZqEpe7A4OQKgIAE6Wd7quGkN68RNGiWqiQJGABceKxXhtZQBi9NHwVtK4QOBzvZCgc9BQIHBVwIAE216tvaUw/q17+HvXhK6UiVAspAYSABjbmBo3d3dm3tpBoPp9s5Ngud63Ws1iAwO2swAB7d3AAKuGJoWqySZG04IGABkuz3u93pKIPp9IcC8Wz2dtIoOxkWyJ4dCAQMhA4crXYXpzOSgMRiMQk5WBvSuHkPq1SvGkOqiSvTMZfuyZECUwoACyz/BAAXtCIPSCA3n06uJl2a1VxBI16yJXeEQMTiMTjy/BAAniYoJJBylEzIWCNJGXVxClBl+qcoIAEiRrIWDQABBZBHCz3d7xODzwWC9JXEIRUhMYL/FMAJXgABChIAAndAAPWBAmaVxB3C1WnWAsq1xWol2eKpWe3pXCtORiMSkPpTJchK4KvEW4OnV9MeK5VtswAB62RLYXbzWulyiFPYni1UhBAnq0JXpl3uAAUuVonW6xWBttr3e72xYBJAwAGjOpMguqyRXpAAkpKwc9KwSuBK4dm7Whmcx9weJkOq+USAwfq8JWt9xXD7pVCV4XdK4IAB1UTiIABaZV604HEzWiKtnjom72OR2ytDAAPdWAdq0MxiMzmQhJj2q1y2F8SusUYPdt1tKwoAB6yuHmIhK9WqiQGEuMuXoZdk91tJQIBEAApjBlOZzSuCiMTJIhXHu5LEu9yCgcRK0fhnr5BfofdKIQJCAwPR9OZVyEijOpKAUukd6iZeBl0TmKvil1NVAtt6xWCK4Nt7e7syuFiTxEA4JDB9xkCiOquITCmMq0YLDiIaDAAhgEAgZpQ9ZWEKIO27tr3e7AgmwgCuEDokhmamCAgIABm+qAoUxmeqiIFBiMTmSuhkW9KwZbBte2sxRB3a0BAgVmtSuDAB0x1WjCgUTlUjBgnuAAPiL4IICUwMu8QsDmSvO8KhBfYICBUoQAD7q3CAASuEABsTj2q1xICmN3uZdDCxEuf4INEAYJWNl0bUwO2VgRUDWoKtBtpWD7SuSV4YFCmZyFmYACKwsuiYIEicyVxxPDVYu9KAJZBAAiuSdIeq+ZuClSvDACMzKxoAB2xUFKoJTGAAVqVyY5BjWqkIXBV4IECCZK1FAAUSKxyvDAAe27vWK5CuVic61V2KQMT9UjDacukXiAQIAL9xYE7pVKVyw7C1QYCmMq0YdSmXukKxM9xlBjarCtpXBJ4QEBLoIDDVypXBmGqVQUz1QaTiUhmczjyvMVwdtKYICCAAa1D7SuVAAU60czIQMquwcVmPiVpNN6avB2xYCWIKvB7pgDAYauWVQWayQ9BmOn8J2UiauJ8M27s+AgJXFtvWtYGCAYdqVzCqB16vBi16OyquJl297quBkXi6yvFKQYAEVzA6BjWq8avBlWjO6auKkQNBAgUhiQDBjZXBKxG6VzERmfq1RbBmYDCOaZWJ9wABAovuKY6udSYM/1UjAgMqAYIdViT8BkUuKgoGCBgvhte2j3u9a0BtfqVzKTCu9zmcxAYIhWK4XincznceVYUbmexLAZZBkIVBBAIbCjyuaSIMzDoQDDDqpQBl0t7vd7ZPC8YGB3xVCWIjDFlWjVzI6ClRUClSvXDwMu7u73vWiUj61tswCBpxRCAAXr3a/CAAOqc4IpLmczHBkx1WpWYUhK6I1DFYUWte7s3Umdt7tmsy2BkMSWAk72K/CkSuBK5gqBK5qvCCIPqkZWQinTAYXdsVN3YAC7pVBAQJWBBAKvEly1FGwREJKoS9NV4MivVymJ7BV6CuFGARNBVgPd6xeDAAL/EAAquJEYJWEAoJjMAQOq0UT1UhK6AjFAQRWBswABtZWE2b/DAAyuJKggADKxKUE1WqscauxWUE4ipFAAViz3uVxhQJLBJVFMQky093kWn8J8HACEbKguzXQIiBiSvJVwJWRUgJWHfoczsWq+2qkavYAA0u93k7e2jyuLADYyEiGq3+v/5pBMYYAYmPujtr3cykZYBl0hBwceVwJWgie61cK1WiVrsTiXh7e7mMiAIIABdQcxVzo0GmfP1QAC0IOHLCoNNVzFGsgLJnn6kUhid6uVxNJIAfjSuXmndsYMJ5+joczpywBgbfCK8yuWinWtvW6cTmMTVw4ECmMzmWq16wnVy00tvds3dskzoilBVwwGEj8H0UQgCu7mhVBAANt6M96yuKAAU2lWq1WhV8kaEwMzs1jKx8xKAJXC61GLoKvFVwwXBkIxBkUhBARNWiYlEVwk0maUHVx9m7vWtvUFIiuHC4ICBn+q+cxH4RNQCgIDBKwoGCVwOm7sxToXdH4oAHVogADttBGAVNmKuHAAdC1QAB19DIoKkPIwLuKVwNt6zpBdwPdslEChFEo0ztpWGswcCBwPWpiuHAAcXkH/vWqkY/HdKAAFnWm63WTodt7tjCQ9NXYM2Vw9m7szm3dEIMPVxUzoc82mq05uBAAiqGACKuBTQQDBV4JJBsJeBEoa/BCIPdKQYUBBIIICAQNtsH6igGBJIwADhWjlWvJ6wAFifa1fdHwaYD7s07tkRYKtBXYQQEAYRSCN4SuC0NNs3UGpMw/9Bv8hiJXbpuq2zxCtvb3e7KwIAC6kd6JTCA4INBK4QUB3vW3YNBDISuCBgI1Kh9zmcx1WjKzXdtWrIoXdtZWBBwk0AQMbB4INCKAIWCtZyB3YGBOQSuB1YEB3e2ZQKuH+4DBmMR/WhCBAAOHwSuEHwKMJ3amCAANmV4SuCJYKuCAgKuBCQRdBVxYABn+qkcTKys7RoPa0lkogALtpUDAAVtNQQAJ37yNVwZYEuywOmKaGHwOqoxWMo1mpe72lEAYKvBKxe7/Q+NVwgABiWii8jA4c0HASmEnZmDnezGAVqVxwAFK4QAE2ZHG56uUmc2hWqKwhCCskTUwe9oJWCHIiuOABjjFRIU8/Q1DVxqjDom61VNFY1mohOE2iRG3SuUAAxDEmhdCVyaPDs36/gqGo3UKApdFVzpdIVwNGoawDUQjyCg/0Rg1K/v6U4IATpSubABG/EptAv4JH1/a1YxVV0TiBpiuBCBiuBSo/91ULS6iul56uYsnK/qu4oiuZ+3U1/UV2PWswACtohBVwPdVy1NpUGVytNHQYABBIIGEMgYEDoxQEm8iAAdw7quBkV0SoYqFs3Ug/9RgtGtX9/WgVyQiBtWkVrVgu4ADvV0VwOnu8EC5Wwu6uI7Wqho3RozmB1Q6EAAMN6gGEund7vTu99AgPSCwwAFvf6AYN2CgPQBw1+3+nhvdo3dWQPQvX91SuGBwIFD3YAGte6RAIAFgEnAwkggAICAYMAKxl3I4IgCChJmCgUGmUjs1Au+vm6uHqEWAgVLKou02UGVw4AcVwZmO0/e1Ut6env4IBVwlmo1Y062FAAlku/a0FVAENQ34lNgH3AYNUqsFC4NV19VhWq4B2Bg93xGI+4RBABWqBpgAWrf6EpsHutFA4lFrX1qv60H61X/u94K4N3EJda0pWiqu/EptQIQ1UxWnw93VIOq1WshnQ1AJBVxhWjVwIPNg5mHK4KmBx96v+q4HEh9F+91V36uHAAN6fwdw5WsgHw5vYVxtUZ4iusrkPfQJOCAgYFBvWmt/MVwMAgG8Bod1oodBAQSuC1FYB4eIV1nAKg+Ix/3VgNG5///hWBh/4x4TBw+FJQ+qBgIACvV1V1kcxGHKogGBHQOr7cL1W7KwMA1QLCvADCu+oV4da04cBvCrdVwgrDbAN3cwVFxGFwCmBvWqTIWHv8P1Wq1+q/WqVwMLt64BK4RKDqiuEvAdBwpWfVwMFAwadCA4RFBU4X3J4IEBLgOvBgIAD1/Ah9N572DJRCuDXYYAERgQAOqgbFn+nAYL1Dv6xBWQOq06UBVwWq5nLKgWm7nMoGv3nAgH07AeCw6jBJQ57Dw4yDAAV3bIQAOrF4LAIFBxn3TYX/xH/+5NB14DCu/61HyBAJUBAIPw/W2hnP+/8gAAB4gsCx5PCLA2KVwQAIW5AAJQAJ0DQ4QvBMISkCXAL3D//85nPAwW97vA+HA1W8KwUIKw4AGPYI7DACwaBJQIcCxRMDAQJVDAAWs5gABf4QAB/vdhgKC3+g4BVBhkK/AvFfQ2PvQuCTphZPv57DPgICCAAJWEVQIACA4ev7fPBIXw1XwVoS7BdwoDBIIuHFwYAKCgpfGPQoABUwoAE/gKJABGsVwX604mBwrEBRxGKVyQEDZ4QNBVQf3f4JWD14DDTgL+D1+wgH3WQYAF/QVB4BXBs3//AqBDgOoKw6uNYQzQFB4uHKgL9D17nBAAPMAAKeD3vd6nL3e73nL5m7CAWw1+8KwUG7//JYauIx96VwZOFNRAEDVQZpDdZH7IQKrD03W6nwBIJIBAA8LhWsAoUM1XP1CJBKoP3JJCuMAApvEK4iqBAIIADdIIFDKwP3+H/s1m3hUJKAX/v6tCgHP1n6/4tB/GIvGPAYIAE/SuDABpyFAwZUB06rF5nLVQb/Dh//+BWLgHK1hWDK4PPFQN3rA2DKwv3VyBvGagKtDVAPKVYRTC19r3e7h7/CIgiuL1UMAwZtBVoLfCAA2HKgN6Vx4dHVwP3u6hC14BB5//A4UN7vd7cMh5UOVwegNIfLK4ItBSAwACKgSuMUwhZCEYN4xRyCfIev5jgBKoXWfhquO/fbVwPP094RYLlDxGFHYN/xSuK/5wDKQJWC1WnOQIDBKweqKof7he72BWVVw291X//n6JgP3AIOq1GPu/3VwN4VxRuBAAYbBOYJJBvADCAAfM5gEC03d36tWVw0L7WvVwKHBIYSNBWYIABVxisDAAJtBA4NaKYoAB//LKomwSQauah6uB5n//4pB095AYRWDUIKuJVoptCx/4Kw+s/TbB0H/s1sVi6uHhlg/RWBV4JTBVoJPDAYOIVyAJDKo385nKAgOv7vQKrKuGV4PW1W/LAivBy4+DVwb5DVgZWEBQSrH1/8Kodr3e7KrSuGgENtSEB//8bYKwCIASqCvWnJwWHA4N/VYitDZIRWF5//AgP65vW/5WbVw0As3616uBF4SlBAIQCBAARPGAAeHxBTHKoXM34FC3vb+BVcVw8A5sK1W8Q4YAEVwV3fggAF+93+5WJ54ECgELs3PKzquH/nbFwX856zBLA6tLMgKuD1/aVogEC1vd56teVxNs/SKC/nMAoIAEu9/VpZYCCQOsDQR2BKwWmsnMRQiujgEE6CME/4ADLAf4VpV4V4hxD5nPAYOg7vQVj6uJh+9oGvRwf854CB5RAC1BPBx93KQSuEKoYADOIP7VoXfKkCuKgEN77hC1WrSAI8BLYIIBv6kBx5SBJ4IDBUwZWHDAX73ZWjVwPMBI27tj/F/hXCAoOnUYKpCw4IBrADCAAwZBDAWg7nwV0oIGh/N2HM349DV4ShCKwN4KwOP1Wo+93WQKtIaAWtsBVjAAPP1/ABI0E7tP//HH4ev5nM/5OBu/4//4xWqx4HBVpLOC/9rVskAhkK/ivH21r3e8/SpCK4I9B5n4KAKnBWAOIVwl5zRWE/YEB03QK0quKLAO963w5hXDIYXIKIIFB1AEBVoJWC1WnAYSsB54EB0m8KsquB/SuHBYW821m7brDAARRBxQEDw5WE1QECVoP/OQOv7itmVxavB/nd7ts3dPJAapCxF/KoRWD36uBAoPP//LBIOt6BVmVwX0B5n7LIO/+HKegSqC/GIKwgAE1//54EBuFLK08A4H/+CvJAAXE3YAB236//3vCuFKw5XB5gDB1nQ+BXogn6/gPM///3vd7fM5aoBAAWqKxAVBKwWm3gjG5gAi3+g3nMLBkMCYNNs3XKwd605ZBAAv8//PWIXbVoziBAEPwRQTcP/fWsytE1WnVw3M//7AgOt7iJG5f6NowAfhhXOAAI5CVoIbEWQpJJKc45CVx4ACJ45eIAGX7KyMHJgpTBLo4ALFyIATEyhWFKg76D/4JE1//AAP85gAj5Ws4BWRhREE1KuBAoXL5nNAoWt7m7AAYxDVsnA1W8YaauFKwd3u/PAoX2EqYAbh/6/iuXK4JWEv/6AoOr6HwK92/1/AVy4ADKwN3AoX9p5VugEMVzRVCK40APaQAd56ubKYRXFPaSu01hWGK4d6BIWsV+HK0AyR1Wv/RWD05TCAYJWD1XwK9/M1UMVyOsKwOaVwZSCKwqvBV36uEKwN5JogAH+H/V18M1XMVyKlIAAZjB1Wv3hWvgHP14TRu+q05WC1/M+4IBAAO9KN4AF4GqRSEHKgJQC1//04FC08LpkM5iswAAMMhWsVyWXVwXM/WnVoUN56u/VxN3Von/KoWq/fb+BW0VwOrK6D+BVoRWB/RWCvlGDqCum1/wHJ8K05WB1/MK4PPVoXUVuoABhf6/gSP1V3KAOv1///gFC5tvK20A5+vVyZSC//KAgP86hW3hiuSAAn//QDBgncK26uC2CuPKwvPAYOstpW4VwP/VyWs////iuD6BX53Wg4CuO15UBAARVBA4Ku5K4OqhiuP/n8KwXKK4MLglgK/PKVyv7VwW936u75gROKwn/KwX77fwK/PP//8CBsPCIIAB/hWC2HN2BW5gGw1XACBv8K4e/K4P8/iu7hn6Vx5VCAAKuC5m2V3fP16uOKIKvBh4EB1nA6yt6VwX7VyX6K4MMhtgK3UA4H/0CvN56tBAAJWBCoNmK3cAgn6/iuQ/nKVwUGV3kA4+g2APMKwX//SuD6xW8hn6//AVx6tC1UAhqu9hnK1iuP/hVB18A228K3kA5mqIBiuGhf06HwV3sK0CuP/auC5+94Cu9gHP1+wVxxWB1X8/fcK30MJIMMVxn8/Su/K4u60BCLA==")) }; - //TAP ALL THE THINGS Bangle.on('touch', (n, e) => { // <88, top @@ -30,26 +28,22 @@ Bangle.on('touch', (n, e) => { clearText(); g.setColor(0,0,0); g.setFont("Dylex7x13",2).setFontAlign(0,0).drawString(getEncour(), width/2, height/2); - setInterval(draw,3000); + setInterval(loader,3000); } }); - //getters function getRandomInt(max) { return Math.floor(Math.random() * max); } - function getEncour(){ //return string let rando = getRandomInt(encourage.length); return encourage[rando]; } - //clear stuff function clearText(){ g.clearRect(0,offset*2,175,175-offset*2); g.drawRect(0,offset*2,175,175-offset*2); } - function queueDraw() { if (drawTimeout) clearTimeout(drawTimeout); drawTimeout = setTimeout(function() { @@ -58,27 +52,24 @@ function queueDraw() { }, 60000 - (Date.now() % 60000)); } -function time(){ +function draw() { var time = locale.time(d, 1); var date = locale.date(d); var mo = dateutil.month(d.getMonth() + 1, 1); - + g.drawImage(bgimg,0,offset); //bg g.setFont("HaxorNarrow7x17").setColor(0,0,0); g.setFontAlign(0, 0).setFont(currentFont, 7).drawString(time, width/2, 100); g.setFontAlign(0,0).setFont(currentFont, 3).drawString(mo + " " + nowDate, width/2, 130); -} -function draw() { - time(); queueDraw(); } //ready set go! g.clear(); -draw(); //draw all the things - -Bangle.setUI("clock"); +Bangle.setUI("clock"); //button +Bangle.drawWidgets(); //widgets Bangle.loadWidgets(); -Bangle.drawWidgets(); + +draw(); //draw all the things From 8d14562be312c7e83ca7770857efa0d4e3c5697b Mon Sep 17 00:00:00 2001 From: eleanor <44651387+elykittytee@users.noreply.github.com> Date: Tue, 4 Apr 2023 10:13:08 -0500 Subject: [PATCH 52/61] removed clearText() --- apps/encourageclk/app.js | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/apps/encourageclk/app.js b/apps/encourageclk/app.js index 79d356af3..60575ad12 100644 --- a/apps/encourageclk/app.js +++ b/apps/encourageclk/app.js @@ -39,11 +39,7 @@ function getEncour(){ //return string let rando = getRandomInt(encourage.length); return encourage[rando]; } -//clear stuff -function clearText(){ - g.clearRect(0,offset*2,175,175-offset*2); - g.drawRect(0,offset*2,175,175-offset*2); -} + function queueDraw() { if (drawTimeout) clearTimeout(drawTimeout); drawTimeout = setTimeout(function() { From e34728849f0fba853ab27abf229e4d1bb6ec3c5c Mon Sep 17 00:00:00 2001 From: thyttan <6uuxstm66@mozmail.com⁩> Date: Mon, 3 Apr 2023 19:46:38 +0200 Subject: [PATCH 53/61] change the logic to buzz at boot instead of before reboot --- apps/longpressbuzz/README.md | 2 +- apps/longpressbuzz/boot.js | 7 +------ apps/longpressbuzz/metadata.json | 4 ++-- 3 files changed, 4 insertions(+), 9 deletions(-) diff --git a/apps/longpressbuzz/README.md b/apps/longpressbuzz/README.md index 7f094e191..f145e38a7 100644 --- a/apps/longpressbuzz/README.md +++ b/apps/longpressbuzz/README.md @@ -1,6 +1,6 @@ # Long Press, Buzz! -Buzz on long press (assumed and hardcoded to 1500ms) to indicate the watch will be reinitiated per your command. +Buzz at boot after a long press to indicate the watch was reinitiated per your command. ## Usage diff --git a/apps/longpressbuzz/boot.js b/apps/longpressbuzz/boot.js index 42cef9890..05bc4a9b3 100644 --- a/apps/longpressbuzz/boot.js +++ b/apps/longpressbuzz/boot.js @@ -1,6 +1 @@ -let btnLoadTimeout = 1500; //Bangle.getOptions().btnLoadTimeout; // Hardcode value to minimize impact on load time at boot. Change to the commented out code to couple it to the actual system setting in the options object. -let buzzTimeout; -setWatch(function(e) { buzzTimeout = setTimeout(Bangle.buzz, btnLoadTimeout-100, 45, 0.35); }, BTN, { -repeat:true, edge:'rising' }); -setWatch(function(e) { if (buzzTimeout) clearTimeout(buzzTimeout); }, BTN, { -repeat:true, edge:'falling' }); +if (BTN.read()) Bangle.buzz(80,0.40); diff --git a/apps/longpressbuzz/metadata.json b/apps/longpressbuzz/metadata.json index 58b8f7cef..f978bf113 100644 --- a/apps/longpressbuzz/metadata.json +++ b/apps/longpressbuzz/metadata.json @@ -2,13 +2,13 @@ "name": "Long Press, Buzz!", "shortName":"LPB", "version":"0.01", - "description": "Buzz on long press (assumed and hardcoded to 1500ms) to indicate the watch will be reinitiated per your command.", + "description": "Buzz at boot after a long press to indicate the watch was reinitiated per your command.", "icon": "app.png", "type": "bootloader", "tags": "system", "supports" : ["BANGLEJS2"], "readme": "README.md", "storage": [ - {"name":"longpressbuzz.boot.js","url":"boot.js"} + {"name":"longpressbuzz.0.boot.js","url":"boot.js"} ] } From cf1205d4175cd1daccc3256b9dbf24a9e13f552a Mon Sep 17 00:00:00 2001 From: thyttan <6uuxstm66@mozmail.com⁩> Date: Mon, 3 Apr 2023 19:59:30 +0200 Subject: [PATCH 54/61] Change icon to Buzz Lightyear, add to Changelog. --- apps/longpressbuzz/ChangeLog | 2 +- apps/longpressbuzz/app.png | Bin 1620 -> 1808 bytes 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/longpressbuzz/ChangeLog b/apps/longpressbuzz/ChangeLog index 5560f00bc..56bf61e6d 100644 --- a/apps/longpressbuzz/ChangeLog +++ b/apps/longpressbuzz/ChangeLog @@ -1 +1 @@ -0.01: New App! +0.01: New App! To infinity and beyond, space ranger! diff --git a/apps/longpressbuzz/app.png b/apps/longpressbuzz/app.png index 582cb2e0853a5a2899a3afbd7eb19cde2ee7f6a0..e3951d78493405ea4f814ab60915d19431e6d941 100644 GIT binary patch delta 1792 zcmV+b2mkog43G|xB!3BTNLh0L01FcU01FcV0GgZ_000KUNklzf z)QzPYkkYbWv6ZlCYHKmYfGCz<>|@6Ft0=6}vz<^h>OZvZy~SO(yI z05t&W0Q{p?r)PXurm>v!zoHj_*#N!kY6 zQmyGIF-h7}_-m7l9R%Rh7@?zDwdTfQqLetCia8CD&40IgtbBg}+l)}(0H^@4GNQc( z;0H5)n`p#gx@2kaIoMgo+tB8d;X{qx4B#U8p$NcB5-OqSoD5GG?-c7|=NoU+#lvH` zm1JPM1;9x$rtle?f`}xIrHqteYbG8Z2gRwakl~ZT#f&u&{w;*D+Lq2R5HKE&K7li z>(UD~p7m@Lo(TzZaq(rn#+>gd!)Y4NvxZu&rmyyQnDikEl}gmct8E4FM$GtSqRGU~ z*9s`}J}59S(~CnsfN}c&keJOydf+N=lz+{4*0Z^y`Jnpa#4`>D6nNVvwrLWAf$~nx zX2ln24htTltLj-U!eX5Zy3I3XZew%?sQ6o=<;-e{&2D)@Qu!>~_tA{Ce> zp%V7QhbXW(jber=`;R7?1{EkZV=2SbR26VGneb4cM3LON)>c(pRkHhX1-_*wN`E_Z zgogq)W%p9R5%X2RCWL$Sj$41V+}#M(z%F1h(L)*vBm%)MQ~@5Uoe`61=Qav60Sw}j zn5#s#&j6enGH-U^Oe~L>zr*BLp$ZI$Va`MhDn8hM1mWQI$pgBf;Gz9UrZgj_99$U4 zFm2KoZ2jXDD2SOzL5O1YpGD^IoPTKEp#H}(aulSiK&^sZo{fSr;MmJl#3#cR(d?&r zwZ}q%BPO_P^eDz{IzbbO!nqo=LH&H=tumrOv$lAsVLDIm;?jd(HHIHHeoK;eBm$9r zsA`6mjw-;dz1R@GK-Vp&Xbye;lnBAb%Bzf&FkzS?8hZeoEZXGZFiLq;Qhx>L`k*Sx zM$7Idf2r1U7UEC|Nal^IZKE*UBEF{Mexmb56M2`c}w5dyrS*${huaS%{oo=T9eYd-Db3_Xa zqkZ!IOz<4mh1e*|%$F7Vmw%|0>6wehwtZ>n4HOUOg~Rs{fACRd?&yOn5WIA;!KrEONchmprvPXBzV7ENo zwqLYzMcWlM-Nf5sLLgOXvgKUDY}@LP;+z5OMa2NuPh_a&iRK3JaDRQ66sN+NbHd&Y zT^~X8uyUEP5#?sSJ_S|EW7Vf1aJ}YKD$Ne7zB-Bb8p#qyhZke*GR&y9Q^Bk_;v2BT ziSlNHIC=AgwPTke)~ri#W| z(e&X>Z+K%A@g6D>_jz={o)5_x>`)Zls{eHX?~!WTqk@MrCPi0iSrzb7$GiP48Hy!S zTFBN13I?PvGUPg=T7!6y7kT=aWLltGW4vGn$@-Na?U=tX($ZvTE^JOP*XKKq;aJY$ iT+(1Jl4iBBgQZ;76qOQH!eYQP$e z!AKAcJ}AB5-5IcA@d8w#^g@T3&dgpul+x+U-n)CIwK<9WpMUnc?eD+#{x0kLJ~)lj z_;W+1>qV*0;V;<>t_7g#4P@iwmk z1qmdsUbfUStd9Y|TVP;i68~i*#Z&Y~>jipZkI1cLC-XG&6_#ObWSo3TMb<VnloLT~EMt9))wb_t9z`$fds1weiDS%fvYLsiPBH2ZnQDk6uTc5^7mPDSrl!}_vf zTUQ)F+oLxD4{1WMdd9!Hc|m5n$vQyR>+YsqvNZO#t<^15JLgwo1!6$$$ooOkyMm*J z0F*s8gnyK)TljRMmz2LruK4O$zQL{wjY9)Z0kt|Lq(2FsQU|U{&Lnw&nv-iz0UQ(1 z_C;r*+zXKT!Vl?Dy;NHGm#6;#j+0`o?rE&cS33Uzu^t4%0M>8gZsvJekQx2@V+fHo z*5xa0rzlknI`ob)Spqpmmr>I{XwtT=f>`%xcYlkXpJLUDL8`0V*CWqymfo()hTHYJB=sn`2^Q$mRE>02( z+W)np;)L1!GUvU2{O{<&F_nE6Qe#D~Xf|dD+?d3-D1(IUiL`C2;PPv4CKw8H)v7h8 z^nZyH25leAvW+P%&S;$=IlOmqK~5megP0ekG0q%cjYX8Luf59F*IsobYlouaRHM0~ z(;q09t|si8%+WECi^loRmFYCwYI6mr1b@o&75=}a@Lib3Y|Ie4CxKK>Okic}5Rq_U zeN+~H!uVe{{lz}^`kQW`|!xuR17T{A$XG+1=zihuSA zi1p!&kSPh)j$Fxp5Gw{9(I0?wrrO+K-v|fy4|DX;36jHEtgI3$_c6CFMEwO7gd?t7 z-aKL)pd~&(x0thy7QxaE*@Ws7r4mmjvcx<3IQ(NG=PY9s!vkrC2h#ks?>HAOpF`dJ zh_{!DY|1~1bS#dwebHHv-OtHAL4Pqg_G^mIKKhN3WERtBFmGXm+WH8Q3O|NVINqP; zhpz`Xd?0}cEM8H=+`36mP?GrceEI9%2{WYQhDKVxISl-_Sn>l$M(Eo9D?J ziW}=_T2jUA>LC80foTera{^p)Wi`>}Gf;(|ZwEZQS^k|*9wyt=f4ZOo!+#eiul{gC zVkpfgTMv^?S+&Oz-^QfHN=vA6Mu zqQHxcUJp$bNst%thoZ%hhv~ZHvseduC&kuI$^k?+Ves;_U-A`;(L4gMVKHj9f;MB& zfHIHq{q=E#pRw2n(gD^ETK4Xl>NV?WoW`FWzXM%bGkOQp1Xln6002ovPDHLkV1hBD B8&3cL From f44327915c46bbbf4f2dcd4fe31f39f6f4d6e1e1 Mon Sep 17 00:00:00 2001 From: thyttan <6uuxstm66@mozmail.com⁩> Date: Mon, 3 Apr 2023 20:18:44 +0200 Subject: [PATCH 55/61] move quote from Changelog to README --- apps/longpressbuzz/ChangeLog | 2 +- apps/longpressbuzz/README.md | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/apps/longpressbuzz/ChangeLog b/apps/longpressbuzz/ChangeLog index 56bf61e6d..5560f00bc 100644 --- a/apps/longpressbuzz/ChangeLog +++ b/apps/longpressbuzz/ChangeLog @@ -1 +1 @@ -0.01: New App! To infinity and beyond, space ranger! +0.01: New App! diff --git a/apps/longpressbuzz/README.md b/apps/longpressbuzz/README.md index f145e38a7..4b43c1f7e 100644 --- a/apps/longpressbuzz/README.md +++ b/apps/longpressbuzz/README.md @@ -2,6 +2,8 @@ Buzz at boot after a long press to indicate the watch was reinitiated per your command. +To infinity and beyond, space ranger! + ## Usage Just install and it will run as boot code. From fb499c6a857f6efa572b070552f8eabebc47fe3a Mon Sep 17 00:00:00 2001 From: thyttan <6uuxstm66@mozmail.com⁩> Date: Mon, 3 Apr 2023 21:30:18 +0200 Subject: [PATCH 56/61] Add Gordon Williams as creator --- apps/longpressbuzz/README.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/apps/longpressbuzz/README.md b/apps/longpressbuzz/README.md index 4b43c1f7e..1c5969faa 100644 --- a/apps/longpressbuzz/README.md +++ b/apps/longpressbuzz/README.md @@ -10,8 +10,8 @@ Just install and it will run as boot code. ## Requests -Mention @[thyttan](https://github.com/thyttan) in an issue to the official [BangleApps repository](https://github.com/espruino/BangleApps/issues) for bug reports and feature requests. +Mention @[thyttan](https://github.com/thyttan) in an issue to the official [BangleApps repository](https://github.com/espruino/BangleApps/issues) for feature requests and bug reports. -## Creator +## Creators -[thyttan](https://github.com/thyttan) +[thyttan](https://github.com/thyttan) and [Gordon Williams](https://github.com/gfwilliams). From 2c93c2f3c5b2d1a50214298025b730cdb178fbc2 Mon Sep 17 00:00:00 2001 From: thyttan <6uuxstm66@mozmail.com⁩> Date: Tue, 4 Apr 2023 17:22:51 +0200 Subject: [PATCH 57/61] change 'per' -> 'at' in metadata and readme --- apps/longpressbuzz/README.md | 2 +- apps/longpressbuzz/metadata.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/apps/longpressbuzz/README.md b/apps/longpressbuzz/README.md index 1c5969faa..6394faa75 100644 --- a/apps/longpressbuzz/README.md +++ b/apps/longpressbuzz/README.md @@ -1,6 +1,6 @@ # Long Press, Buzz! -Buzz at boot after a long press to indicate the watch was reinitiated per your command. +Buzz at boot after a long press to indicate the watch was reinitiated at your command. To infinity and beyond, space ranger! diff --git a/apps/longpressbuzz/metadata.json b/apps/longpressbuzz/metadata.json index f978bf113..56e06f0bd 100644 --- a/apps/longpressbuzz/metadata.json +++ b/apps/longpressbuzz/metadata.json @@ -2,7 +2,7 @@ "name": "Long Press, Buzz!", "shortName":"LPB", "version":"0.01", - "description": "Buzz at boot after a long press to indicate the watch was reinitiated per your command.", + "description": "Buzz at boot after a long press to indicate the watch was reinitiated at your command.", "icon": "app.png", "type": "bootloader", "tags": "system", From 1d095bc2052c683d6a203e907915b5002c1c7814 Mon Sep 17 00:00:00 2001 From: eleanor <44651387+elykittytee@users.noreply.github.com> Date: Tue, 4 Apr 2023 11:39:17 -0500 Subject: [PATCH 58/61] updated app.js again idk what's going on. why are my changes being reverted. --- apps/encourageclk/app.js | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/apps/encourageclk/app.js b/apps/encourageclk/app.js index 60575ad12..a78a788ba 100644 --- a/apps/encourageclk/app.js +++ b/apps/encourageclk/app.js @@ -1,3 +1,5 @@ +//230404 + require("FontHaxorNarrow7x17").add(Graphics); require("FontDylex7x13").add(Graphics); @@ -24,13 +26,13 @@ var bgimg = { //TAP ALL THE THINGS Bangle.on('touch', (n, e) => { // <88, top - if (e.x > offset && e.y < height) { //bar - clearText(); + if (e.x < width && e.y > offset) { g.setColor(0,0,0); g.setFont("Dylex7x13",2).setFontAlign(0,0).drawString(getEncour(), width/2, height/2); - setInterval(loader,3000); + setInterval(draw,3000); } }); + //getters function getRandomInt(max) { return Math.floor(Math.random() * max); @@ -39,7 +41,7 @@ function getEncour(){ //return string let rando = getRandomInt(encourage.length); return encourage[rando]; } - +//everymine function queueDraw() { if (drawTimeout) clearTimeout(drawTimeout); drawTimeout = setTimeout(function() { From 7089640f0d7fb8958703ba4ad69c40e707c3c445 Mon Sep 17 00:00:00 2001 From: eleanor <44651387+elykittytee@users.noreply.github.com> Date: Tue, 4 Apr 2023 11:42:03 -0500 Subject: [PATCH 59/61] Update ChangeLog --- apps/encourageclk/ChangeLog | 1 + 1 file changed, 1 insertion(+) diff --git a/apps/encourageclk/ChangeLog b/apps/encourageclk/ChangeLog index 3a21fc294..83c07f784 100644 --- a/apps/encourageclk/ChangeLog +++ b/apps/encourageclk/ChangeLog @@ -1,2 +1,3 @@ 0.01: New face :) 0.02: code improvements +0.03: code improvments to queuedraw and draw From fcd1089ca698dbdf2c073b365b10144d60a8f3cc Mon Sep 17 00:00:00 2001 From: eleanor <44651387+elykittytee@users.noreply.github.com> Date: Tue, 4 Apr 2023 11:42:30 -0500 Subject: [PATCH 60/61] now version 0.03 --- apps/encourageclk/metadata.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/encourageclk/metadata.json b/apps/encourageclk/metadata.json index bc17d9c8d..4e5d630cf 100644 --- a/apps/encourageclk/metadata.json +++ b/apps/encourageclk/metadata.json @@ -2,7 +2,7 @@ "id": "encourageclk", "name": "Encouragement & Positivity Clock", "shortName":"Encouragement Clock", - "version": "0.02", + "version": "0.03", "description": "Tap on the watch for a note of encouragement", "icon": "app.png", "type": "clock", From 81bc99b7a167a099895157dbdfc67a935679d15c Mon Sep 17 00:00:00 2001 From: thyttan <6uuxstm66@mozmail.com⁩> Date: Wed, 5 Apr 2023 12:38:12 +0200 Subject: [PATCH 61/61] pull in 'Ensure that changing a menu item when half-scrolled off screen doesn't overwrite widgets' from the standard scroller --- apps/swscroll/ChangeLog | 2 ++ apps/swscroll/boot.js | 2 +- apps/swscroll/metadata.json | 2 +- 3 files changed, 4 insertions(+), 2 deletions(-) diff --git a/apps/swscroll/ChangeLog b/apps/swscroll/ChangeLog index c5fc9dcb4..b35c27001 100644 --- a/apps/swscroll/ChangeLog +++ b/apps/swscroll/ChangeLog @@ -1,2 +1,4 @@ 0.01: Inital release. 0.02: Rebasing on latest changes to showScroller_Q3 (https://github.com/espruino/Espruino/commit/2d3c34ef7c2b9fe2118e816aacd2e096adb99596). +0.03: Rebasing on latest changes to showScroller_Q3 (https://github.com/espruino/Espruino/commit/b6f8105b6348bb6f7cd03ac11efc1f3585c6ad79). Ensure that changing a menu item when half-scrolled off screen doesn't overwrite widgets. + diff --git a/apps/swscroll/boot.js b/apps/swscroll/boot.js index 2b1b00de3..57a5d8fb3 100644 --- a/apps/swscroll/boot.js +++ b/apps/swscroll/boot.js @@ -95,7 +95,7 @@ var s = { g.setClipRect(0,0,g.getWidth()-1,g.getHeight()-1); }, drawItem : i => { var y = idxToY(i); - g.reset().setClipRect(R.x,y,R.x2,y+options.h); + g.reset().setClipRect(R.x,Math.max(y,R.y),R.x2,Math.min(y+options.h,R.y2)); options.draw(i, {x:R.x,y:y,w:R.w,h:options.h}); g.setClipRect(0,0,g.getWidth()-1,g.getHeight()-1); }}; diff --git a/apps/swscroll/metadata.json b/apps/swscroll/metadata.json index 4edbfa2ba..eff55e4bd 100644 --- a/apps/swscroll/metadata.json +++ b/apps/swscroll/metadata.json @@ -1,7 +1,7 @@ { "id": "swscroll", "name": "Swipe menus", - "version": "0.02", + "version": "0.03", "description": "Replace built in E.showScroller to act on swipe instead of drag. Navigate menus in discrete steps instead of a continuous motion.", "readme": "README.md", "icon": "app.png",