Add Backup & Reset sub-page with factory reset (developer feature)
Moves the previously standalone "Backup settings"/"Restore settings" buttons out of the System menu into a new "Backup & Reset" sub-page (replaced in the System menu by a single folder button, placed directly above "Info"), and adds a third entry "Reset settings" - a factory reset for developers/testers that deletes the entire Flightradar folder from the SD card (settings, logbook, location presets, WiFi, calibration - everything) and restarts the device. The next boot picks up isFirstRun automatically (via the missing SD_SETTINGS_FILE) and runs the full first-time setup again, exactly like on the very first boot - no need to pull the SD card. Since this is irreversible, it requires a full-screen red warning confirmation first, reusing the same overlay previously built only for the flight-logbook enable warning (confirmLogbookEnable() generalized to confirmWarningScreen(), taking title/body StringIds as parameters). New SdStorage::deleteDirectoryRecursive() and SettingsBackup::factoryReset() implement the actual deletion + restart. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
@@ -231,6 +231,12 @@ static const char* const I18N_ES[] = {
|
||||
"ej. Casa, Trabajo, Casa de vacaciones",
|
||||
|
||||
"Vehículo terrestre",
|
||||
|
||||
"Copia de seguridad y reinicio",
|
||||
"Reiniciar ajustes",
|
||||
"Elimina TODOS los datos de la tarjeta SD (ajustes, registro de vuelos, ubicaciones guardadas, WiFi, calibración) y reinicia el dispositivo. Después se ejecutará de nuevo la configuración inicial completa, como en el primer arranque. ¡Esto NO se puede deshacer!",
|
||||
"Eliminando todos los datos...",
|
||||
"Error al reiniciar.",
|
||||
};
|
||||
|
||||
static_assert(sizeof(I18N_ES) / sizeof(I18N_ES[0]) == (size_t)StringId::COUNT,
|
||||
|
||||
Reference in New Issue
Block a user