forked from FOSS/BangleApps
Fixed AI clock and use.get instead of .show for clkinfo
parent
6a6690ae21
commit
9f44ed8dd3
|
@ -3,3 +3,4 @@
|
|||
0.03: Indicate battery level through line occurrence.
|
||||
0.04: Use widget_utils module.
|
||||
0.05: Support for clkinfo.
|
||||
0.06: ClockInfo Fix: Use .get instead of .show as .show is not implemented for weather etc.
|
|
@ -29,7 +29,6 @@ var H = g.getHeight();
|
|||
var cx = W/2;
|
||||
var cy = H/2;
|
||||
var drawTimeout;
|
||||
var lock_input = false;
|
||||
|
||||
|
||||
/************************************************
|
||||
|
@ -93,28 +92,6 @@ menu = menu.concat(clockItems);
|
|||
settings.menuPosY = 0;
|
||||
}
|
||||
|
||||
// Set draw functions for each item
|
||||
menu.forEach((menuItm, x) => {
|
||||
menuItm.items.forEach((item, y) => {
|
||||
function drawItem() {
|
||||
// For the clock, we have a special case, as we don't wanna redraw
|
||||
// immediately when something changes. Instead, we update data each minute
|
||||
// to save some battery etc. Therefore, we hide (and disable the listener)
|
||||
// immedeately after redraw...
|
||||
item.hide();
|
||||
|
||||
// After drawing the item, we enable inputs again...
|
||||
lock_input = false;
|
||||
|
||||
var info = item.get();
|
||||
drawMenuItem(info.text, info.img);
|
||||
}
|
||||
|
||||
item.on('redraw', drawItem);
|
||||
})
|
||||
});
|
||||
|
||||
|
||||
function canRunMenuItem(){
|
||||
if(settings.menuPosY == 0){
|
||||
return false;
|
||||
|
@ -204,8 +181,6 @@ function drawMenuItem(text, image){
|
|||
drawTime();
|
||||
return
|
||||
}
|
||||
// image = atob("GBiBAAD+AAH+AAH+AAH+AAH/AAOHAAYBgAwAwBgwYBgwYBgwIBAwOBAwOBgYIBgMYBgAYAwAwAYBgAOHAAH/AAH+AAH+AAH+AAD+AA==");
|
||||
|
||||
text = String(text);
|
||||
|
||||
g.reset().setBgColor("#fff").setColor("#000");
|
||||
|
@ -292,7 +267,7 @@ function drawDigits(){
|
|||
}
|
||||
|
||||
|
||||
function drawDate(){
|
||||
function drawMenu(){
|
||||
var menuEntry = menu[settings.menuPosX];
|
||||
|
||||
// The first entry is the overview...
|
||||
|
@ -302,9 +277,8 @@ function drawDate(){
|
|||
}
|
||||
|
||||
// Draw item if needed
|
||||
lock_input = true;
|
||||
var item = menuEntry.items[settings.menuPosY-1];
|
||||
item.show();
|
||||
var item = menuEntry.items[settings.menuPosY-1].get();
|
||||
drawMenuItem(item.text, item.img);
|
||||
}
|
||||
|
||||
|
||||
|
@ -320,7 +294,7 @@ function draw(){
|
|||
g.setColor(1,1,1);
|
||||
|
||||
drawBackground();
|
||||
drawDate();
|
||||
drawMenu();
|
||||
drawCircle(Bangle.isLocked());
|
||||
}
|
||||
|
||||
|
@ -353,10 +327,6 @@ Bangle.on('touch', function(btn, e){
|
|||
var is_right = e.x > right && !is_upper && !is_lower;
|
||||
var is_center = !is_upper && !is_lower && !is_left && !is_right;
|
||||
|
||||
if(lock_input){
|
||||
return;
|
||||
}
|
||||
|
||||
if(is_lower){
|
||||
Bangle.buzz(40, 0.6);
|
||||
settings.menuPosY = (settings.menuPosY+1) % (menu[settings.menuPosX].items.length+1);
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
"name": "AI Clock",
|
||||
"shortName":"AI Clock",
|
||||
"icon": "aiclock.png",
|
||||
"version":"0.05",
|
||||
"version":"0.06",
|
||||
"readme": "README.md",
|
||||
"supports": ["BANGLEJS2"],
|
||||
"description": "A watch face that was designed by an AI (stable diffusion) and implemented by a human.",
|
||||
|
|
Loading…
Reference in New Issue