mod: add clock settings tab, timezone support, and clock size option

Fix clock persistence bug caused by stale legacy read in settings
deserialization. Add clock size setting (Small/Medium/Large) and
timezone selection with North American presets plus custom UTC offset.
Move all clock-related settings into a dedicated Clock tab, rename
"Home Screen Clock" to "Clock", and move minute-change detection to
main loop so the header clock updates on every screen.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
cottongin
2026-02-17 03:46:06 -05:00
parent 38a87298f3
commit 966fbef3d1
22 changed files with 435 additions and 42 deletions

View File

@@ -119,6 +119,7 @@ enum class StrId : uint16_t {
STR_CAT_READER,
STR_CAT_CONTROLS,
STR_CAT_SYSTEM,
STR_CAT_CLOCK,
STR_SLEEP_SCREEN,
STR_SLEEP_COVER_MODE,
STR_STATUS_BAR,
@@ -371,10 +372,24 @@ enum class StrId : uint16_t {
STR_PREFERRED_PORTRAIT,
STR_PREFERRED_LANDSCAPE,
STR_CHOOSE_SOMETHING,
STR_HOME_SCREEN_CLOCK,
STR_CLOCK,
STR_CLOCK_AMPM,
STR_CLOCK_24H,
STR_SET_TIME,
STR_CLOCK_SIZE,
STR_CLOCK_SIZE_SMALL,
STR_CLOCK_SIZE_MEDIUM,
STR_CLOCK_SIZE_LARGE,
STR_TIMEZONE,
STR_TZ_UTC,
STR_TZ_EASTERN,
STR_TZ_CENTRAL,
STR_TZ_MOUNTAIN,
STR_TZ_PACIFIC,
STR_TZ_ALASKA,
STR_TZ_HAWAII,
STR_TZ_CUSTOM,
STR_SET_UTC_OFFSET,
// Sentinel - must be last
_COUNT
};