From ecf85fe9b753aa7073045ec811a09e3f4163b063 Mon Sep 17 00:00:00 2001 From: Rob Pilling Date: Mon, 31 Jul 2023 21:50:52 +0100 Subject: [PATCH] recorder: always show clkinfo We can't tell whether Bangle.loadWidgets() might be called later, so assume it does, and handle the case where it hasn't been. --- apps/recorder/clkinfo.js | 30 ++++++++++++++++++------------ 1 file changed, 18 insertions(+), 12 deletions(-) diff --git a/apps/recorder/clkinfo.js b/apps/recorder/clkinfo.js index 162509eb6..b4a9a45b8 100644 --- a/apps/recorder/clkinfo.js +++ b/apps/recorder/clkinfo.js @@ -7,22 +7,28 @@ return { name: "Bangle", - items: typeof WIDGETS !== "undefined" && WIDGETS["recorder"] ? [ + items: require("Storage").readJSON("recorder.json") ? [ { name: "Toggle", - get: () => WIDGETS["recorder"].isRecording() ? { - text: "Recording", - short: "rec", - img: recimg(), - } : { - text: "Paused", - short: "paused", - img: pauseimg(), + get: () => { + const w = WIDGETS && WIDGETS["recorder"]; + + return w && w.isRecording() ? { + text: "Recording", + short: "Rec", + img: recimg(), + } : { + text: w ? "Paused" : "No rec", + short: w ? "Paused" : "No rec", + img: pauseimg(), + }; }, run: () => { - const w = WIDGETS["recorder"]; - Bangle.buzz(); - w.setRecording(!w.isRecording(), { force: "append" }); + const w = WIDGETS && WIDGETS["recorder"]; + if(w){ + Bangle.buzz(); + w.setRecording(!w.isRecording(), { force: "append" }); + } }, show: () => {}, hide: () => {},