Call widget_utils' show/hide instead of Bangle.drawWidgets()
parent
417b434cf1
commit
58e8c032c7
|
|
@ -623,16 +623,23 @@ let lcdBuffer = 0,
|
||||||
start = 0;
|
start = 0;
|
||||||
|
|
||||||
let locked = false,
|
let locked = false,
|
||||||
charging = false;
|
let charging = false;
|
||||||
var interval = 30;
|
let stopped = true;
|
||||||
var timeout;
|
let interval = 30;
|
||||||
|
let timeout;
|
||||||
|
|
||||||
function setupInterval(force) {
|
function setupInterval(force) {
|
||||||
if (timeout)
|
if (timeout)
|
||||||
clearTimeout(timeout);
|
clearTimeout(timeout);
|
||||||
let stopped = locked && !charging;
|
let stop = locked && !charging;
|
||||||
timeout = setTimeout(setupInterval, stopped ? 60000 : 60);
|
timeout = setTimeout(setupInterval, stop ? 60000 : 60);
|
||||||
tick(stopped && !force);
|
tick(stop && !force);
|
||||||
|
if (stop != stopped) {
|
||||||
|
stopped = stop;
|
||||||
|
let widget_utils = require("widget_utils");
|
||||||
|
if (stop) widget_utils.show();
|
||||||
|
else if (widget_utils.hide) widget_utils.hide();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
function test(addr, y) {
|
function test(addr, y) {
|
||||||
|
|
@ -720,30 +727,26 @@ function init() {
|
||||||
setTimeout(probe, 1);
|
setTimeout(probe, 1);
|
||||||
}
|
}
|
||||||
|
|
||||||
function tick(widgets) {
|
function tick(locked) {
|
||||||
g.reset();
|
g.reset();
|
||||||
|
|
||||||
if (lcdBuffer && !widgets) {
|
if (lcdBuffer && !locked) {
|
||||||
BLACK().drawRect(-1, -1, 0, 177); // dirty all the rows
|
BLACK().drawRect(-1, -1, 0, 177); // dirty all the rows
|
||||||
gfx.tick(bgColor);
|
gfx.tick(bgColor);
|
||||||
}
|
}
|
||||||
|
|
||||||
var d = new Date();
|
var d = new Date();
|
||||||
var h = d.getHours(), m = d.getMinutes();
|
var h = d.getHours(), m = d.getMinutes();
|
||||||
g.setColor(widgets ? g.theme.fg : g.toColor(1,0,1))
|
g.setColor(locked ? g.theme.fg : g.toColor(1,0,1))
|
||||||
.setBgColor(g.theme.bg)
|
.setBgColor(g.theme.bg)
|
||||||
.setFontCustom(fontNum, 48, 28, 41)
|
.setFontCustom(fontNum, 48, 28, 41)
|
||||||
.setFontAlign(-1, -1)
|
.setFontAlign(-1, -1)
|
||||||
.drawString(("0" + h).substr(-2) + ("0"+m).substr(-2), 30, 30, true);
|
.drawString(("0" + h).substr(-2) + ("0"+m).substr(-2), 30, 30, true);
|
||||||
|
|
||||||
if (widgets)
|
|
||||||
Bangle.drawWidgets();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
init();
|
|
||||||
|
|
||||||
Bangle.setUI("clock");
|
Bangle.setUI("clock");
|
||||||
Bangle.loadWidgets();
|
Bangle.loadWidgets();
|
||||||
|
|
||||||
Bangle.on("lock", l => {
|
Bangle.on("lock", l => {
|
||||||
locked = l;
|
locked = l;
|
||||||
setupInterval();
|
setupInterval();
|
||||||
|
|
@ -753,3 +756,5 @@ Bangle.on('charging', c => {
|
||||||
charging = c;
|
charging = c;
|
||||||
setupInterval();
|
setupInterval();
|
||||||
});
|
});
|
||||||
|
|
||||||
|
init();
|
||||||
|
|
|
||||||
|
|
@ -493,17 +493,24 @@ const WHITE = g.setColor.bind(g, 0xFFFF);
|
||||||
let lcdBuffer = 0,
|
let lcdBuffer = 0,
|
||||||
start = 0;
|
start = 0;
|
||||||
|
|
||||||
let locked = false,
|
let locked = false;
|
||||||
charging = false;
|
let charging = false;
|
||||||
var interval = 30,
|
let stopped = true;
|
||||||
timeout;
|
let interval = 30;
|
||||||
|
let timeout;
|
||||||
|
|
||||||
function setupInterval(force) {
|
function setupInterval(force) {
|
||||||
if (timeout)
|
if (timeout)
|
||||||
clearTimeout(timeout);
|
clearTimeout(timeout);
|
||||||
let stopped = locked && !charging;
|
let stop = locked && !charging;
|
||||||
timeout = setTimeout(setupInterval, stopped ? 60000 : 30);
|
timeout = setTimeout(setupInterval, stop ? 60000 : 60);
|
||||||
tick(stopped && !force);
|
tick(stop && !force);
|
||||||
|
if (stop != stopped) {
|
||||||
|
stopped = stop;
|
||||||
|
let widget_utils = require("widget_utils");
|
||||||
|
if (stop) widget_utils.show();
|
||||||
|
else if (widget_utils.hide) widget_utils.hide();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
function test(addr, y) {
|
function test(addr, y) {
|
||||||
|
|
@ -655,10 +662,10 @@ function drawNode(index) {
|
||||||
gfx.render(E.getAddressOf(translation, true));
|
gfx.render(E.getAddressOf(translation, true));
|
||||||
}
|
}
|
||||||
|
|
||||||
function tick(widgets) {
|
function tick(locked) {
|
||||||
g.reset();
|
g.reset();
|
||||||
|
|
||||||
if (lcdBuffer && !widgets) {
|
if (lcdBuffer && !locked) {
|
||||||
BLACK().drawRect(-1, -1, 0, 177); // dirty all the rows
|
BLACK().drawRect(-1, -1, 0, 177); // dirty all the rows
|
||||||
gfx.clear(bgColor);
|
gfx.clear(bgColor);
|
||||||
gfx.stars();
|
gfx.stars();
|
||||||
|
|
@ -677,15 +684,11 @@ function tick(widgets) {
|
||||||
.setFontAlign(0, 0.5)
|
.setFontAlign(0, 0.5)
|
||||||
.setFont('6x8', 2)
|
.setFont('6x8', 2)
|
||||||
.drawString(time, 176 / 2, 176 - 16, true);
|
.drawString(time, 176 / 2, 176 - 16, true);
|
||||||
|
|
||||||
if (widgets)
|
|
||||||
Bangle.drawWidgets();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
init();
|
|
||||||
|
|
||||||
Bangle.setUI("clock");
|
Bangle.setUI("clock");
|
||||||
Bangle.loadWidgets();
|
Bangle.loadWidgets();
|
||||||
|
|
||||||
Bangle.on("lock", l => {
|
Bangle.on("lock", l => {
|
||||||
locked = l;
|
locked = l;
|
||||||
setupInterval();
|
setupInterval();
|
||||||
|
|
@ -695,3 +698,5 @@ Bangle.on('charging', c => {
|
||||||
charging = c;
|
charging = c;
|
||||||
setupInterval();
|
setupInterval();
|
||||||
});
|
});
|
||||||
|
|
||||||
|
init();
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue