diff --git a/apps/contourclock/contourclock.settings.js b/apps/contourclock/contourclock.settings.js index 2b045a1ff..bdce8b85f 100644 --- a/apps/contourclock/contourclock.settings.js +++ b/apps/contourclock/contourclock.settings.js @@ -1,37 +1,43 @@ (function(back) { - Bangle.removeAllListeners("drag"); + Bangle.removeAllListeners('drag'); Bangle.setUI(""); - var settings = require('Storage').readJSON("contourclock.json", true) || {}; + var settings = require('Storage').readJSON('contourclock.json', true) || {}; if (settings.fontIndex==undefined) { - settings.fontIndex=0; - require('Storage').writeJSON("myapp.json", settings); + settings.fontIndex=0; + require('Storage').writeJSON("myapp.json", settings); } - savedIndex=settings.fontIndex; - setWatch(function() { //save changes and return to settings menu - require('Storage').writeJSON("contourclock.json", settings); + savedIndex=settings.fontIndex; + saveListener = setWatch(function() { //save changes and return to settings menu + require('Storage').writeJSON('contourclock.json', settings); + Bangle.removeAllListeners('swipe'); + Bangle.removeAllListeners('lock'); + clearWatch(saveListener); g.clear(); - back(); + back(); }, BTN, { repeat:false, edge:'falling' }); - Bangle.on('lock', function () { //discard changes and return to clock + lockListener = Bangle.on('lock', function () { //discard changes and return to clock settings.fontIndex=savedIndex; - require('Storage').writeJSON("contourclock.json", settings); + require('Storage').writeJSON('contourclock.json', settings); + Bangle.removeAllListeners('swipe'); + Bangle.removeAllListeners('lock'); + clearWatch(saveListener); g.clear(); load(); }); - Bangle.on('swipe', function (direction) { + swipeListener = Bangle.on('swipe', function (direction) { var fontName = require('contourclock').drawClock(settings.fontIndex+direction); if (fontName) { settings.fontIndex+=direction; g.clearRect(0,0,g.getWidth()-1,16); - g.setFontAlign(0,-1).drawString(fontName,g.getWidth()/2,0); + g.setFont('6x8:2x2').setFontAlign(0,-1).drawString(fontName,g.getWidth()/2,0); } else { require('contourclock').drawClock(settings.fontIndex); } }); g.reset(); g.clear(); - g.setFont("6x8:2x2").setFontAlign(0,-1); + g.setFont('6x8:2x2').setFontAlign(0,-1); g.drawString(require('contourclock').drawClock(settings.fontIndex),g.getWidth()/2,0); - g.drawString("Swipe - change",g.getWidth()/2,g.getHeight()-36); - g.drawString("BTN - save",g.getWidth()/2,g.getHeight()-18); + g.drawString('Swipe - change',g.getWidth()/2,g.getHeight()-36); + g.drawString('BTN - save',g.getWidth()/2,g.getHeight()-18); })