diff --git a/src/graphics/Screen.cpp b/src/graphics/Screen.cpp index 55733deb4..747744d7a 100644 --- a/src/graphics/Screen.cpp +++ b/src/graphics/Screen.cpp @@ -861,10 +861,9 @@ void Screen::setFrames(FrameFocus focus) indicatorIcons.push_back(icon_memory); } #if !defined(DISPLAY_CLOCK_FRAME) - LOG_INFO("Current state of graphics::ClockRenderer::digitalWatchFace is %s", graphics::ClockRenderer::digitalWatchFace); fsi.positions.clock = numframes; normalFrames[numframes++] = graphics::ClockRenderer::digitalWatchFace ? graphics::ClockRenderer::drawDigitalClockFrame - : &graphics::ClockRenderer::drawAnalogClockFrame; + : graphics::ClockRenderer::drawAnalogClockFrame; indicatorIcons.push_back(digital_icon_clock); #endif diff --git a/src/graphics/draw/ClockRenderer.cpp b/src/graphics/draw/ClockRenderer.cpp index c70095c1c..4edc18472 100644 --- a/src/graphics/draw/ClockRenderer.cpp +++ b/src/graphics/draw/ClockRenderer.cpp @@ -21,6 +21,7 @@ namespace graphics namespace ClockRenderer { +bool digitalWatchFace = true; void drawSegmentedDisplayColon(OLEDDisplay *display, int x, int y, float scale) { diff --git a/src/graphics/draw/ClockRenderer.h b/src/graphics/draw/ClockRenderer.h index 4660dcc35..2e06f5fc9 100644 --- a/src/graphics/draw/ClockRenderer.h +++ b/src/graphics/draw/ClockRenderer.h @@ -12,7 +12,7 @@ class Screen; namespace ClockRenderer { // Whether we are showing the digital watch face or the analog one -static bool digitalWatchFace = true; +extern bool digitalWatchFace; // Clock frame functions void drawAnalogClockFrame(OLEDDisplay *display, OLEDDisplayUiState *state, int16_t x, int16_t y); diff --git a/src/graphics/draw/MenuHandler.cpp b/src/graphics/draw/MenuHandler.cpp index 9e48cd640..267c71e2d 100644 --- a/src/graphics/draw/MenuHandler.cpp +++ b/src/graphics/draw/MenuHandler.cpp @@ -105,7 +105,6 @@ void menuHandler::ClockFacePicker() graphics::ClockRenderer::digitalWatchFace = false; screen->setFrames(); // Causes the screens to redraw, but doesn't change the face } - service->reloadConfig(SEGMENT_CONFIG); }); } @@ -175,7 +174,7 @@ void menuHandler::TZPicker() void menuHandler::clockMenu() { static const char *optionsArray[] = {"Back", "Clock Face", "12-hour", "Timezone"}; - screen->showOverlayBanner("Clock Menu", 30000, optionsArray, 3, [](int selected) -> void { + screen->showOverlayBanner("Clock Menu", 30000, optionsArray, 4, [](int selected) -> void { if (selected == 1) { menuHandler::menuQueue = menuHandler::clock_face_picker; screen->setInterval(0); @@ -198,16 +197,16 @@ void menuHandler::messageResponseMenu() static const char **optionsArrayPtr; int options; if (kb_found) { - const char *optionsArray[] = {"Back", "Dismiss", "Reply via Preset", "Reply via Freetext"}; + static const char *optionsArray[] = {"Back", "Dismiss", "Reply via Preset", "Reply via Freetext"}; optionsArrayPtr = optionsArray; options = 4; } else { - const char *optionsArray[] = {"Back", "Dismiss", "Reply via Preset"}; + static const char *optionsArray[] = {"Back", "Dismiss", "Reply via Preset"}; optionsArrayPtr = optionsArray; options = 3; } #ifdef HAS_I2S - const char *optionsArray[] = {"Back", "Dismiss", "Reply via Preset", "Reply via Freetext", "Read Aloud"}; + static const char *optionsArray[] = {"Back", "Dismiss", "Reply via Preset", "Reply via Freetext", "Read Aloud"}; optionsArrayPtr = optionsArray; options = 5; #endif