diff --git a/apps.json b/apps.json index 54fee7e28..53f56a8eb 100644 --- a/apps.json +++ b/apps.json @@ -627,7 +627,7 @@ { "id": "blobclk", "name": "Large Digit Clock", "icon": "clock-blob.png", - "version":"0.01", + "version":"0.02", "description": "A clock with big digits", "tags": "clock", "type":"clock", diff --git a/apps/blobclk/ChangeLog b/apps/blobclk/ChangeLog new file mode 100644 index 000000000..8a0d1acbc --- /dev/null +++ b/apps/blobclk/ChangeLog @@ -0,0 +1,3 @@ +0.02: Improve performance when screen wakes + Only draw widgets after clearing screen - they update automatically + Remove 'faceUp' check as it's automatic diff --git a/apps/blobclk/clock-blob.js b/apps/blobclk/clock-blob.js index 0bb8b8d2e..7b60bc6a2 100644 --- a/apps/blobclk/clock-blob.js +++ b/apps/blobclk/clock-blob.js @@ -17,7 +17,6 @@ function flip() { g.setColor(1,1,1); g.drawImage({width:buf.getWidth(),height:buf.getHeight(),buffer:buf.buffer},55,26); - try { if (drawWidgets) { drawWidgets();} } catch(err) {} } function drawPixel(ox,oy,x,y,r,p) { let x1 = ox+x*(r*2+1); @@ -81,28 +80,23 @@ flip(); } function clearTimers() { - if(intervalRef) {clearInterval(intervalRef);} + if(intervalRef) { + clearInterval(intervalRef); + intervalRef = undefined; + } } function startTimers() { g.clear(); - digits = [-1,-1,-1,-1,-1,-1]; + try { if (drawWidgets) { drawWidgets();} } catch(err) {} intervalRef = setInterval(redraw,1000); redraw(); } startTimers(); Bangle.on('lcdPower',function(on) { if (on) { - g.clear(); startTimers(); - try { if (drawWidgets) { drawWidgets();} } catch(err) {} } else { clearTimers(); } }); - Bangle.on('faceUp',function(up){ - if (up && !Bangle.isLCDOn()) { - clearTimers(); - Bangle.setLCDPower(true); - } - }); })();