Use white icons when dark theme is enabled
parent
3207c73b4f
commit
f532bcb5be
|
|
@ -1,26 +1,28 @@
|
||||||
(function(){
|
(function() {
|
||||||
let settings = require("Storage").readJSON("widgps.json", 1) || {
|
let settings =
|
||||||
crossIcon: true
|
require("Storage").readJSON("widgps.json", 1) || {crossIcon : true};
|
||||||
};
|
|
||||||
|
|
||||||
var interval;
|
var interval;
|
||||||
|
|
||||||
// override setGPSPower so we know if GPS is on or off
|
// override setGPSPower so we know if GPS is on or off
|
||||||
var oldSetGPSPower = Bangle.setGPSPower;
|
var oldSetGPSPower = Bangle.setGPSPower;
|
||||||
Bangle.setGPSPower = function(on,id) {
|
Bangle.setGPSPower = function(on, id) {
|
||||||
var isGPSon = oldSetGPSPower(on,id);
|
var isGPSon = oldSetGPSPower(on, id);
|
||||||
WIDGETS.gps.draw();
|
WIDGETS.gps.draw();
|
||||||
return isGPSon;
|
return isGPSon;
|
||||||
};
|
};
|
||||||
|
|
||||||
WIDGETS.gps={area:"tr",width:24,draw:function() {
|
WIDGETS.gps = {
|
||||||
|
area : "tr",
|
||||||
|
width : 24,
|
||||||
|
draw : function() {
|
||||||
g.reset();
|
g.reset();
|
||||||
|
|
||||||
// check if we need to update the widget periodically
|
// check if we need to update the widget periodically
|
||||||
if (Bangle.isGPSOn() && interval === undefined) {
|
if (Bangle.isGPSOn() && interval === undefined) {
|
||||||
interval = setInterval(function() {
|
interval = setInterval(
|
||||||
WIDGETS.gps.draw(WIDGETS.gps);
|
function() { WIDGETS.gps.draw(WIDGETS.gps); },
|
||||||
}, 10*1000); // update every 10 seconds to show gps fix/no fix
|
10 * 1000); // update every 10 seconds to show gps fix/no fix
|
||||||
} else if (!Bangle.isGPSOn() && interval !== undefined) {
|
} else if (!Bangle.isGPSOn() && interval !== undefined) {
|
||||||
clearInterval(interval);
|
clearInterval(interval);
|
||||||
interval = undefined;
|
interval = undefined;
|
||||||
|
|
@ -36,18 +38,57 @@
|
||||||
} else {
|
} else {
|
||||||
g.setColor("#888"); // off = grey
|
g.setColor("#888"); // off = grey
|
||||||
}
|
}
|
||||||
g.drawImage(atob("GBiBAAAAAAAAAAAAAA//8B//+BgYGBgYGBgYGBgYGBgYGBgYGB//+B//+BgYGBgYGBgYGBgYGBgYGBgYGB//+A//8AAAAAAAAAAAAA=="), this.x, 2+this.y);
|
g.drawImage(
|
||||||
|
atob(
|
||||||
|
"GBiBAAAAAAAAAAAAAA//8B//+BgYGBgYGBgYGBgYGBgYGBgYGB//+B//+BgYGBgYGBgYGBgYGBgYGBgYGB//+A//8AAAAAAAAAAAAA=="),
|
||||||
|
this.x, 2 + this.y);
|
||||||
} else { // marker icons
|
} else { // marker icons
|
||||||
|
const darkTheme = g.theme.dark;
|
||||||
if (Bangle.isGPSOn()) {
|
if (Bangle.isGPSOn()) {
|
||||||
const gpsObject = Bangle.getGPSFix();
|
const gpsObject = Bangle.getGPSFix();
|
||||||
if (gpsObject && gpsObject.fix > 0) {
|
if (gpsObject && gpsObject.fix > 0) {
|
||||||
g.drawImage(atob("GBjBAP//AAAAAAAAAAAAfgAA/wABw4ADAMAHAMAGPGAGPGAGPGAGPGADAMADAMADgcABgYABw4AAwwAAZgAAfgAAPAAAGAAAAAAAAAAAAAA="), this.x, 2+this.y); // on and has fix
|
// on and has fix
|
||||||
|
if (!darkTheme) {
|
||||||
|
g.drawImage(
|
||||||
|
atob(
|
||||||
|
"GBjBAP//AAAAAAAAAAAAfgAA/wABw4ADAMAHAMAGPGAGPGAGPGAGPGADAMADAMADgcABgYABw4AAwwAAZgAAfgAAPAAAGAAAAAAAAAAAAAA="),
|
||||||
|
this.x, 2 + this.y);
|
||||||
} else {
|
} else {
|
||||||
g.drawImage(atob("GBjBAP//AAAAAAAAAAAIfgAN/4APgeAPAHAPgDAAPBgAfhgA5wwAwwwAwwwwwwAwZgAwfgAYPAAYGAAMAfAOAPAHgfAB/7AAfhAAAAAAAAA="), this.x, 2+this.y); // on but no fix
|
g.drawImage(
|
||||||
|
atob(
|
||||||
|
"GBjBAP////8AAAAAAAAAfgAA/wABw4ADAMAHAMAGPGAGPGAGPGAGPGADAMADAMADgcABgYABw4AAwwAAZgAAfgAAPAAAGAAAAAAAAAAAAAA="),
|
||||||
|
this.x, 2 + this.y);
|
||||||
|
}
|
||||||
|
|
||||||
|
} else {
|
||||||
|
// GNSS on but no fix
|
||||||
|
if (!darkTheme) {
|
||||||
|
g.drawImage(
|
||||||
|
atob(
|
||||||
|
"GBjBAP//AAAAAAAAAAAIfgAN/4APgeAPAHAPgDAAPBgAfhgA5wwAwwwAwwwwwwAwZgAwfgAYPAAYGAAMAfAOAPAHgfAB/7AAfhAAAAAAAAA="),
|
||||||
|
this.x, 2 + this.y);
|
||||||
|
} else {
|
||||||
|
g.drawImage(
|
||||||
|
atob(
|
||||||
|
"GBjBAP////8AAAAAAAAIfgAN/4APgeAPAHAPgDAAPBgAfhgA5wwAwwwAwwwwwwAwZgAwfgAYPAAYGAAMAfAOAPAHgfAB/7AAfhAAAAAAAAA="),
|
||||||
|
this.x, 2 + this.y);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
g.drawImage(atob("GBjBAP//AAAAAAAAAAAAfgAY/wAcQ4AOAMAHAMAHjGAHxGAG4GAGcGADOMADHEADjgABhwABw4AAw8AAZuAAfnAAPDgAGBgAAAAAAAAAAAA="), this.x, 2+this.y); // off
|
// GNSS off
|
||||||
|
if (!darkTheme) {
|
||||||
|
g.drawImage(
|
||||||
|
atob(
|
||||||
|
"GBjBAP//AAAAAAAAAAAAfgAY/wAcQ4AOAMAHAMAHjGAHxGAG4GAGcGADOMADHEADjgABhwABw4AAw8AAZuAAfnAAPDgAGBgAAAAAAAAAAAA="),
|
||||||
|
this.x, 2 + this.y);
|
||||||
|
} else {
|
||||||
|
g.drawImage(
|
||||||
|
atob(
|
||||||
|
"GBjBAP////8AAAAAAAAAfgAY/wAcQ4AOAMAHAMAHjGAHxGAG4GAGcGADOMADHEADjgABhwABw4AAw8AAZuAAfnAAPDgAGBgAAAAAAAAAAAA="),
|
||||||
|
this.x, 2 + this.y);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}};
|
}
|
||||||
|
}
|
||||||
|
};
|
||||||
})();
|
})();
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue