diff --git a/apps/clkinfostopw/ChangeLog b/apps/clkinfostopw/ChangeLog new file mode 100644 index 000000000..1f72aa73b --- /dev/null +++ b/apps/clkinfostopw/ChangeLog @@ -0,0 +1 @@ +0.01: New clkinfo! diff --git a/apps/clkinfostopw/clkinfo.js b/apps/clkinfostopw/clkinfo.js index c21d3e7b1..71a4431a2 100644 --- a/apps/clkinfostopw/clkinfo.js +++ b/apps/clkinfostopw/clkinfo.js @@ -13,7 +13,25 @@ redrawInterval = setInterval(() => this.emit('redraw'), 100); }; - const duration = () => ((Date.now() - startTime) / 1000).toFixed(1); + const pad2 = s => ('0' + s.toFixed(0)).slice(-2); + + const duration = () => { + let seconds = (Date.now() - startTime) / 1000; + + if (seconds < 60) + return seconds.toFixed(1); + + let mins = seconds / 60; + seconds %= 60; + + if (mins < 60) + return `${pad2(mins)}m${pad2(seconds)}s`; + + let hours = mins / 60; + mins %= 60; + + return `${Math.round(hours)}h${pad2(mins)}m${pad2(seconds)}s`; + }; return { name: "timer", diff --git a/apps/clkinfostopw/metadata.json b/apps/clkinfostopw/metadata.json index c27981810..c0821b8be 100644 --- a/apps/clkinfostopw/metadata.json +++ b/apps/clkinfostopw/metadata.json @@ -7,6 +7,7 @@ "type": "clkinfo", "tags": "clkinfo,timer", "supports" : ["BANGLEJS2"], + "allow_emulator": true, "storage": [ {"name":"stopw.clkinfo.js","url":"clkinfo.js"} ]