mirror of https://github.com/espruino/BangleApps
commit
fcd5a06e21
|
@ -1725,7 +1725,7 @@
|
||||||
{ "id": "rndmclk",
|
{ "id": "rndmclk",
|
||||||
"name": "Random Clock Loader",
|
"name": "Random Clock Loader",
|
||||||
"icon": "rndmclk.png",
|
"icon": "rndmclk.png",
|
||||||
"version":"0.01",
|
"version":"0.02",
|
||||||
"description": "Load a different clock whenever the LCD is switched on.",
|
"description": "Load a different clock whenever the LCD is switched on.",
|
||||||
"readme": "README.md",
|
"readme": "README.md",
|
||||||
"tags": "widget,clock",
|
"tags": "widget,clock",
|
||||||
|
|
|
@ -1 +1,2 @@
|
||||||
0.01: New widget
|
0.01: New widget
|
||||||
|
0.02: Less invasive, change default clock setting instead of directly loading the new clock (no longer breaks Gadgetbridge notifications)
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
# Summary
|
# Summary
|
||||||
|
|
||||||
Random Clock is a widget that will randomly show one of the installed watch faces each time the LCD is turned on.
|
Random Clock is a widget that will randomly show one of the installed watch faces each time the LCD is turned on.
|
||||||
|
|
||||||
## Disclaimer
|
# How it works
|
||||||
This is an early version and will load a clock each time the LCD is turned on no matter what app was running before the screen went to standby. Also the next watch face is only loaded after the last one is shown for a few tens of seconds.
|
Everytime the LCD is turned off, the widget randomly changes the clock. When you long press BTN 3 the next time,
|
||||||
|
you might (or might not, it's random after all) see another watch face.
|
|
@ -1,4 +1,5 @@
|
||||||
(() => {
|
(() => {
|
||||||
|
let currentClock = "";
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Random value between zero (inclusive) and max (exclusive)
|
* Random value between zero (inclusive) and max (exclusive)
|
||||||
|
@ -15,13 +16,18 @@
|
||||||
if (clockApps && clockApps.length > 0) {
|
if (clockApps && clockApps.length > 0) {
|
||||||
var clockIndex = getRandomInt(clockApps.length);
|
var clockIndex = getRandomInt(clockApps.length);
|
||||||
|
|
||||||
load(clockApps[clockIndex].src);
|
// Only update the file if the clock really change to be nice to the FLASH mem
|
||||||
|
if (clockApps[clockIndex].src != currentClock) {
|
||||||
|
currentClock = clockApps[clockIndex].src;
|
||||||
|
settings = require("Storage").readJSON('setting.json', 1);
|
||||||
|
settings.clock = clockApps[clockIndex].src;
|
||||||
|
require("Storage").write('setting.json', settings);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
Bangle.on('lcdPower', (on) => {
|
Bangle.on('lcdPower', (on) => {
|
||||||
if (on) {
|
if (!on) {
|
||||||
// TODO: Only run if the current app is a clock as well
|
|
||||||
loadRandomClock();
|
loadRandomClock();
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
Loading…
Reference in New Issue