diff --git a/apps.json b/apps.json index a02aec925..c5e6d8aef 100644 --- a/apps.json +++ b/apps.json @@ -1312,10 +1312,11 @@ { "id": "barclock", "name": "Bar Clock", "icon": "clock-bar.png", - "version":"0.05", + "version":"0.06", "description": "A simple digital clock showing seconds as a bar", "tags": "clock", "type":"clock", + "readme": "README.md", "allow_emulator":true, "storage": [ {"name":"barclock.app.js","url":"clock-bar.js"}, @@ -3212,7 +3213,6 @@ "readme": "README.md", "description": "An Omnitrix Showpiece", "tags": "game", - "readme": "README.md", "storage": [ {"name":"omnitrix.app.js","url":"omnitrix.app.js"}, {"name":"omnitrix.img","url":"omnitrix.icon.js","evaluate":true} diff --git a/apps/barclock/ChangeLog b/apps/barclock/ChangeLog index 616ee66e9..551926191 100644 --- a/apps/barclock/ChangeLog +++ b/apps/barclock/ChangeLog @@ -2,4 +2,5 @@ 0.02: Apply locale, 12-hour setting 0.03: Fix dates drawing over each other at midnight 0.04: Small bugfix -0.05: Clock does not start if app Languages is not installed \ No newline at end of file +0.05: Clock does not start if app Languages is not installed +0.06: Improve accuracy \ No newline at end of file diff --git a/apps/barclock/README.md b/apps/barclock/README.md new file mode 100644 index 000000000..4b92313c5 --- /dev/null +++ b/apps/barclock/README.md @@ -0,0 +1,6 @@ +# Bar Clock +A simple digital clock showing seconds as a horizontal bar. + +| 24hr style | 12hr style | +| --- | --- | +| ![24-hour bar clock](screenshot.png) | ![12-hour bar clock with meridian](screenshot_pm.png) | diff --git a/apps/barclock/clock-bar.js b/apps/barclock/clock-bar.js index 0f2609298..4bb6c048a 100644 --- a/apps/barclock/clock-bar.js +++ b/apps/barclock/clock-bar.js @@ -12,12 +12,12 @@ date.setMonth(1, 3) // februari: months are zero-indexed const localized = locale.date(date, true) locale.dayFirst = /3.*2/.test(localized) - + locale.hasMeridian = false if(typeof locale.meridian === 'function') { // function does not exists if languages app is not installed locale.hasMeridian = (locale.meridian(date) !== '') } - + } const screen = { width: g.getWidth(), @@ -124,7 +124,7 @@ g.fillRect(0, timeTop, screen.width, screen.height) } - let lastSeconds + let lastSeconds, tTick const tick = function () { g.reset() const date = new Date() @@ -136,20 +136,20 @@ } // the bar only gets larger, so drawing on top of the previous one is fine drawBar(date) - lastSeconds = seconds + // schedule next update + const millis = date.getMilliseconds() + tTick = setTimeout(tick, 1000-millis) } - let iTick const start = function () { lastSeconds = 99 // force redraw tick() - iTick = setInterval(tick, 1000) } const stop = function () { - if (iTick) { - clearInterval(iTick) - iTick = undefined + if (tTick) { + clearTimeout(tTick) + tTick = undefined } } diff --git a/apps/barclock/screenshot.png b/apps/barclock/screenshot.png new file mode 100644 index 000000000..d37ee9cae Binary files /dev/null and b/apps/barclock/screenshot.png differ diff --git a/apps/barclock/screenshot_pm.png b/apps/barclock/screenshot_pm.png new file mode 100644 index 000000000..a2a3f63fb Binary files /dev/null and b/apps/barclock/screenshot_pm.png differ diff --git a/apps/gpsservice/README.md b/apps/gpsservice/README.md index b1e3e60d4..061f3ba3b 100644 --- a/apps/gpsservice/README.md +++ b/apps/gpsservice/README.md @@ -2,6 +2,9 @@ A configurable, low power GPS widget that runs in the background. +NOTE: This app has been superceded by [gpssetup](https://github.com/espruino/BangleApps/blob/master/apps/gpssetup/README.md) + + ## Goals To develop a low power GPS widget that runs in the background and to