mirror of
https://github.com/MarekZegare4/MeshCore-Solo.git
synced 2026-11-02 19:02:00 +00:00
perf(ui-lvgl): lower clock when idle, fewer redraws, wake on BLE frames
- CPU at 80 MHz with the screen on after 2 s without touch or animation; a touch restores the full clock before its frame is drawn - setText(): periodic refreshes no longer redraw unchanged labels (status bar, Home, lock, Diag, GPS, compass, clock, map, nav, nearby) - map markers kept across the 3 s rebuild when unchanged - app connected: the loop blocks until a BLE frame arrives (serialFrameArrived / hasPendingFrames) instead of polling every 2 ms - PSRAM: boot frame sprite and the HTTP response buffer released Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
@@ -226,16 +226,16 @@ void UITask::refreshClock() {
|
||||
if (s_big) {
|
||||
char b[16];
|
||||
fmtRemaining(b, sizeof(b), _core->clock.timerRemainingMs());
|
||||
lv_label_set_text(s_big, b);
|
||||
setText(s_big, b);
|
||||
}
|
||||
if (s_go_lbl) lv_label_set_text(s_go_lbl, running ? LV_SYMBOL_STOP " Stop" : LV_SYMBOL_PLAY " Start");
|
||||
if (s_go_lbl) setText(s_go_lbl, running ? LV_SYMBOL_STOP " Stop" : LV_SYMBOL_PLAY " Start");
|
||||
} else if (s_tab == TAB_STOPWATCH) {
|
||||
if (s_big) {
|
||||
char b[16];
|
||||
fmtStopwatch(b, sizeof(b), swElapsed());
|
||||
lv_label_set_text(s_big, b);
|
||||
setText(s_big, b);
|
||||
}
|
||||
if (s_go_lbl) lv_label_set_text(s_go_lbl, s_sw_running ? LV_SYMBOL_PAUSE " Stop" : LV_SYMBOL_PLAY " Start");
|
||||
if (s_go_lbl) setText(s_go_lbl, s_sw_running ? LV_SYMBOL_PAUSE " Stop" : LV_SYMBOL_PLAY " Start");
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user