gpstrek - Only store state file if needed

master
Martin Boonk 2022-10-13 21:13:07 +02:00
parent c2d55ab031
commit 6dbd99fdab
1 changed files with 5 additions and 2 deletions

View File

@ -1,6 +1,7 @@
(() => { (() => {
const STORAGE=require('Storage'); const STORAGE=require('Storage');
let state = STORAGE.readJSON("gpstrek.state.json")||{}; let state = STORAGE.readJSON("gpstrek.state.json")||{};
let bgChanged = false;
function saveState(){ function saveState(){
state.saved = Date.now(); state.saved = Date.now();
@ -8,7 +9,7 @@ function saveState(){
} }
E.on("kill",()=>{ E.on("kill",()=>{
if (state.active){ if (bgChanged){
saveState(); saveState();
} }
}); });
@ -84,6 +85,7 @@ function start(bg){
Bangle.setCompassPower(1, "gpstrek"); Bangle.setCompassPower(1, "gpstrek");
Bangle.setBarometerPower(1, "gpstrek"); Bangle.setBarometerPower(1, "gpstrek");
if (bg){ if (bg){
if (!state.active) bgChanged = true;
state.active = true; state.active = true;
saveState(); saveState();
} }
@ -92,6 +94,7 @@ function start(bg){
function stop(bg){ function stop(bg){
if (bg){ if (bg){
if (state.active) bgChanged = true;
state.active = false; state.active = false;
saveState(); saveState();
} }
@ -112,7 +115,7 @@ if (state.saved && state.saved < Date.now() - 60000){
} }
if (state.active){ if (state.active){
start(); start(false);
} }
WIDGETS["gpstrek"]={ WIDGETS["gpstrek"]={