Files
trail-mate/modules/ui_shared
liu weikai 400c5ed996 fix(esp): reduce RAM pressure and TDeck display stalls
Tune Arduino task stacks and board env flags to recover internal RAM for BLE startup.

Avoid synchronous boot UI rendering on Arduino loopTask and move large board singletons toward PSRAM where available.

Improve TDeck/Pager display responsiveness by restoring practical LVGL DMA buffers, using SPI pixel writes, disabling transition animations, and testing TDeck display SPI at 80MHz.
2026-06-26 16:20:37 +08:00
..
2026-06-24 16:34:29 +08:00

ui_shared

Shared LVGL UI building blocks that are reused by multiple screens and should remain portable across ESP Arduino, ESP-IDF, and future Linux LVGL targets.

Current contents

  • ui/app_screen.h
  • ui/app_runtime.h
  • ui/formatters.h
  • ui/components/two_pane_nav.h
  • ui/components/two_pane_layout.h
  • ui/components/two_pane_styles.h
  • ui/screens/* shared screen implementations
  • ui/assets/* shared icons/fonts/images

These files are the current shared UI contracts, reusable screens, and shared UI assets that no longer belong to a single legacy src/ui/* subtree.

Current boundary notes:

  • ui/app_screen.h defines the shared screen contract used by menu/runtime code
  • ui/app_runtime.h owns shared app-switching, menu-return, focus-group, and generic LVGL menu helpers
  • ui/formatters.h owns pure UI formatting helpers that do not depend on board state or persistence
  • battery, timezone, screenshot, display glue, map tiles, and other board/product-specific UI helpers now live under platform/esp/arduino_common