forked from FOSS/BangleApps
Update app.js
parent
90ae9f0f8c
commit
48a6d29d60
|
@ -2,7 +2,7 @@
|
||||||
Speed and Altitude [speedalt]
|
Speed and Altitude [speedalt]
|
||||||
Mike Bennett mike[at]kereru.com
|
Mike Bennett mike[at]kereru.com
|
||||||
*/
|
*/
|
||||||
var v = '1.09';
|
var v = '1.10';
|
||||||
var buf = Graphics.createArrayBuffer(240,160,2,{msb:true});
|
var buf = Graphics.createArrayBuffer(240,160,2,{msb:true});
|
||||||
|
|
||||||
// Load fonts
|
// Load fonts
|
||||||
|
@ -269,17 +269,21 @@ function setButtons(){
|
||||||
|
|
||||||
// Power saving on/off
|
// Power saving on/off
|
||||||
setWatch(function(e){
|
setWatch(function(e){
|
||||||
pwrSav=!pwrSav;
|
var dur = e.time - e.lastTime;
|
||||||
if ( pwrSav ) {
|
if ( dur < 2 ) { // Short press.
|
||||||
LED1.reset();
|
pwrSav=!pwrSav;
|
||||||
var s = require('Storage').readJSON('setting.json',1)||{};
|
if ( pwrSav ) {
|
||||||
var t = s.timeout||10;
|
LED1.reset();
|
||||||
Bangle.setLCDTimeout(t);
|
var s = require('Storage').readJSON('setting.json',1)||{};
|
||||||
}
|
var t = s.timeout||10;
|
||||||
else {
|
Bangle.setLCDTimeout(t);
|
||||||
Bangle.setLCDTimeout(0);
|
}
|
||||||
Bangle.setLCDPower(1);
|
else {
|
||||||
LED1.set();
|
Bangle.setLCDTimeout(0);
|
||||||
|
Bangle.setLCDPower(1);
|
||||||
|
LED1.set();
|
||||||
|
}
|
||||||
|
else setLpMode('SuperE',false); // long press, power off LP GPS
|
||||||
}
|
}
|
||||||
}, BTN2, {repeat:true,edge:"falling"});
|
}, BTN2, {repeat:true,edge:"falling"});
|
||||||
|
|
||||||
|
@ -309,7 +313,7 @@ function updateClock() {
|
||||||
|
|
||||||
function startDraw(){
|
function startDraw(){
|
||||||
canDraw=true;
|
canDraw=true;
|
||||||
setLpMode('SuperE'); // off
|
setLpMode('SuperE',true); // off
|
||||||
g.clear();
|
g.clear();
|
||||||
Bangle.drawWidgets();
|
Bangle.drawWidgets();
|
||||||
onGPS(lf); // draw app screen
|
onGPS(lf); // draw app screen
|
||||||
|
@ -317,7 +321,7 @@ function startDraw(){
|
||||||
|
|
||||||
function stopDraw() {
|
function stopDraw() {
|
||||||
canDraw=false;
|
canDraw=false;
|
||||||
if (!tmrLP) tmrLP=setInterval(function () {if (lf.fix) setLpMode('PSMOO');}, 30000); //Drop to low power in 30 secs. Keep lp mode off until we have a first fix.
|
if (!tmrLP) tmrLP=setInterval(function () {if (lf.fix) setLpMode('PSMOO',true);}, 30000); //Drop to low power in 30 secs. Keep lp mode off until we have a first fix.
|
||||||
}
|
}
|
||||||
|
|
||||||
function savSettings() {
|
function savSettings() {
|
||||||
|
@ -330,12 +334,12 @@ function isLP() {
|
||||||
return(1);
|
return(1);
|
||||||
}
|
}
|
||||||
|
|
||||||
function setLpMode(m) {
|
function setLpMode(m,p) {
|
||||||
if (tmrLP) {clearInterval(tmrLP);tmrLP = false;} // Stop any scheduled drop to low power
|
if (tmrLP) {clearInterval(tmrLP);tmrLP = false;} // Stop any scheduled drop to low power
|
||||||
if ( !lp ) return;
|
if ( !lp ) return;
|
||||||
var s = WIDGETS.gpsservice.gps_get_settings();
|
var s = WIDGETS.gpsservice.gps_get_settings();
|
||||||
if ( m !== s.power_mode || !s.gpsservice ) {
|
if ( m !== s.power_mode || !s.gpsservice ) {
|
||||||
s.gpsservice = true;
|
s.gpsservice = p;
|
||||||
s.power_mode = m;
|
s.power_mode = m;
|
||||||
WIDGETS.gpsservice.gps_set_settings(s);
|
WIDGETS.gpsservice.gps_set_settings(s);
|
||||||
WIDGETS.gpsservice.reload();
|
WIDGETS.gpsservice.reload();
|
||||||
|
@ -399,7 +403,7 @@ onGPS(lf);
|
||||||
|
|
||||||
var lp = isLP(); // Low power GPS widget installed?
|
var lp = isLP(); // Low power GPS widget installed?
|
||||||
if ( lp ) {
|
if ( lp ) {
|
||||||
setLpMode('SuperE');
|
setLpMode('SuperE',true);
|
||||||
setInterval(()=>onGPS(WIDGETS.gpsservice.gps_get_fix()), 1000);
|
setInterval(()=>onGPS(WIDGETS.gpsservice.gps_get_fix()), 1000);
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
|
|
Loading…
Reference in New Issue