Kiosk: System Name entry in System Settings

Adds a System Name text-entry page (hint 'e.g. Living Room', 1-40 char
validation) and a data-driven System Settings row for it. Saving persists
locally and nudges the background sync; conflict/invalid results surface
the message and restore the previous name. Extends the settings-menu
tests.
This commit is contained in:
NeilClack
2026-09-29 09:58:08 -05:00
parent e7df02344b
commit 1bfe64580c
7 changed files with 287 additions and 7 deletions
+4
View File
@@ -6,6 +6,7 @@
#include "logical_size.h"
#include "timezone_page.h"
#include "wifi_setup_page.h"
#include "system_name_page.h"
#include <SDL3/SDL.h>
#include <SDL3_image/SDL_image.h>
#include <algorithm>
@@ -76,6 +77,9 @@ void SystemSettingsPage::activateSelected(AppState &state)
case radiantwave::settings::SystemSettingId::LicenseKey:
state.pages.push(state, std::make_unique<LicenseKeyPage>());
break;
case radiantwave::settings::SystemSettingId::SystemName:
state.pages.push(state, std::make_unique<SystemNamePage>());
break;
case radiantwave::settings::SystemSettingId::WiFiSetup:
state.pages.push(state, std::make_unique<WiFiSetupPage>());
break;