Skip to content

Add selectable UI color theme for color TFT displays - #3204

Open
estebanscdev wants to merge 1 commit into
meshcore-dev:devfrom
estebanscdev:fix/3169-t096-theme-option
Open

Add selectable UI color theme for color TFT displays#3204
estebanscdev wants to merge 1 commit into
meshcore-dev:devfrom
estebanscdev:fix/3169-t096-theme-option

Conversation

@estebanscdev

Copy link
Copy Markdown

Adds a runtime-selectable "legacy" dark theme (restoring the pre-refactor black background / green-yellow text palette) as an opt-in alongside the current "default" light theme, for boards using ST7735Display, ST7789LCDDisplay, NV3001BDisplay or LGFXDisplay (e.g. Heltec T096).

Fixes #3169

Selectable via Serial CLI: "set theme legacy" / "set theme default". DisplayDriver::applyTheme() returns false for an unrecognized/unsupported theme name, so the command rejects typos instead of silently falling back.

Persisted in NodePrefs.ui_theme (survives reboots and full power loss, written to flash via DataStore::savePrefs), reapplied at boot and live without reboot. DisplayDriver::getThemeCount() reports per-driver theme support so the command only works on boards with a color-capable display.

Adds a runtime-selectable "legacy" dark theme (restoring the pre-refactor
black background / green-yellow text palette) as an opt-in alongside the
current "default" light theme, for boards using ST7735Display,
ST7789LCDDisplay, NV3001BDisplay or LGFXDisplay (e.g. Heltec T096).

Fixes meshcore-dev#3169

Selectable via Serial CLI: "set theme legacy" / "set theme default".
DisplayDriver::applyTheme() returns false for an unrecognized/unsupported
theme name, so the command rejects typos instead of silently falling back.

Persisted in NodePrefs.ui_theme (survives reboots and full power loss,
written to flash via DataStore::savePrefs), reapplied at boot and live
without reboot. DisplayDriver::getThemeCount() reports per-driver theme
support so the command only works on boards with a color-capable display.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant