From 9f44ed8dd3dd276784fab7819e52c605e32d37b6 Mon Sep 17 00:00:00 2001 From: David Peer Date: Wed, 4 Jan 2023 16:11:14 +0100 Subject: [PATCH] Fixed AI clock and use.get instead of .show for clkinfo --- apps/aiclock/ChangeLog | 3 ++- apps/aiclock/aiclock.app.js | 38 ++++--------------------------------- apps/aiclock/metadata.json | 2 +- 3 files changed, 7 insertions(+), 36 deletions(-) diff --git a/apps/aiclock/ChangeLog b/apps/aiclock/ChangeLog index fb5aed3e3..15a7d0a14 100644 --- a/apps/aiclock/ChangeLog +++ b/apps/aiclock/ChangeLog @@ -2,4 +2,5 @@ 0.02: Design improvements and fixes. 0.03: Indicate battery level through line occurrence. 0.04: Use widget_utils module. -0.05: Support for clkinfo. \ No newline at end of file +0.05: Support for clkinfo. +0.06: ClockInfo Fix: Use .get instead of .show as .show is not implemented for weather etc. \ No newline at end of file diff --git a/apps/aiclock/aiclock.app.js b/apps/aiclock/aiclock.app.js index b5bb30b9d..66fa2ca6a 100644 --- a/apps/aiclock/aiclock.app.js +++ b/apps/aiclock/aiclock.app.js @@ -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); diff --git a/apps/aiclock/metadata.json b/apps/aiclock/metadata.json index 1dcda427f..4ff40ca65 100644 --- a/apps/aiclock/metadata.json +++ b/apps/aiclock/metadata.json @@ -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.",