refactor(ui-lvgl): review -- shared button bar, confirms, notes, local time

- Dead code gone: anim::fadeHide, radioctl::presetCount, the L2 board's
  setSdPower / setGrovePower / expanderOK (awRead, gnssReset now private).
- buttonBar() / barButton() replace 7 copies of the popup button row.
- confirmBody(): one red-button confirm for reboot / power off, reset
  counters, admin commands, preset and scope delete.
- tapConfirmed(): the 11 "tap again" buttons share one mechanism, 3 s
  everywhere, the label restored when left alone.
- noteLabel() for ~30 wrapped notes.
- localTm() in NodePrefs.h and one MONTHS table: lvgl, MsgExpand, the L1
  clock and lock screen.
- The sim keeps UI settings in an in-memory nvs::, so one set of load /
  save helpers serves both.
- Asleep, the loop wakes every 50 ms (the button / touch poll), not 20.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
Jakub
2026-09-28 22:35:26 +02:00
co-authored by Claude Opus 5.5
parent 1def29335c
commit ece849db3b
25 changed files with 308 additions and 563 deletions
+1 -3
View File
@@ -186,9 +186,7 @@ void UITask::buildOta() {
lv_obj_t* card = infoCard(body);
infoRow(card, "Installed", FIRMWARE_VERSION);
s_ota_latest = infoRow(card, "Latest release", "");
_ota_status = label(body, "", THEME_FONT_BODY, theme::TEXT);
lv_label_set_long_mode(_ota_status, LV_LABEL_LONG_WRAP);
lv_obj_set_width(_ota_status, LV_PCT(100));
_ota_status = noteLabel(body, "", THEME_FONT_BODY, theme::TEXT);
_ota_bar = lv_bar_create(body);
lv_obj_set_size(_ota_bar, LV_PCT(100), 10);
lv_bar_set_range(_ota_bar, 0, 1000);