Many improvements

master
David Peer 2022-09-30 14:15:32 +02:00
parent 637663e8a0
commit 9c3a9f7e2c
1 changed files with 26 additions and 9 deletions

View File

@ -55,18 +55,18 @@ var H = g.getHeight();
show: function() { dateMenu.items[0].emit("redraw"); }, show: function() { dateMenu.items[0].emit("redraw"); },
hide: function () {} hide: function () {}
}, },
{ name: "day",
get: () => ({ text: getDay(), img: null}),
show: function() { dateMenu.items[2].emit("redraw"); },
hide: function () {}
},
{ name: "date", { name: "date",
get: () => ({ text: getDate(), img: null}), get: () => ({ text: getDate(), img: null}),
show: function() { dateMenu.items[1].emit("redraw"); }, show: function() { dateMenu.items[1].emit("redraw"); },
hide: function () {} hide: function () {}
}, },
{ name: "steps", { name: "week",
get: () => ({ text: Bangle.getHealthStatus("day").steps, img: null}), get: () => ({ text: weekOfYear(), img: null}),
show: function() { dateMenu.items[2].emit("redraw"); },
hide: function () {}
},
{ name: "battery",
get: () => ({ text: E.getBattery() + (Bangle.isCharging() ? "%++" : "%"), img: null}),
show: function() { dateMenu.items[3].emit("redraw"); }, show: function() { dateMenu.items[3].emit("redraw"); },
hide: function () {} hide: function () {}
}, },
@ -130,6 +130,23 @@ function getDate(){
return twoD(date.getDate()) + "." + twoD(date.getMonth()); return twoD(date.getDate()) + "." + twoD(date.getMonth());
} }
function getDay(){
var date = new Date();
return locale.dow(date, true);
}
function weekOfYear() {
var date = new Date();
date.setHours(0, 0, 0, 0);
// Thursday in current week decides the year.
date.setDate(date.getDate() + 3 - (date.getDay() + 6) % 7);
// January 4 is always in week 1.
var week1 = new Date(date.getFullYear(), 0, 4);
// Adjust to Thursday in week 1 and count number of weeks from date to week1.
return 1 + Math.round(((date.getTime() - week1.getTime()) / 86400000
- 3 + (week1.getDay() + 6) % 7) / 7);
}
/************************************************ /************************************************
@ -138,8 +155,7 @@ function getDate(){
function draw() { function draw() {
queueDraw(); queueDraw();
g.clear(); g.clearRect(0,24,W,H);
Bangle.drawWidgets();
drawMainScreen(); drawMainScreen();
} }
@ -362,6 +378,7 @@ function drawCursor(){
// Load and draw widgets // Load and draw widgets
Bangle.loadWidgets(); Bangle.loadWidgets();
Bangle.drawWidgets();
// Draw first time // Draw first time
draw(); draw();