feat(v1.8.0): IMPL_04 Backup Settings - Improved Progress Display

- Remove in-button spinner from SettingsButton and SettingsOutlinedButton
- Buttons keep text during loading and become disabled (enabled=false)
- Add BackupProgressCard component with LinearProgressIndicator + status text
- Add backupStatusText StateFlow in SettingsViewModel
- Add 3-phase status system: In Progress → Completion → Clear
- Show success completion status for 2 seconds ("Backup created!", etc.)
- Show error status for 3 seconds ("Backup failed", etc.)
- Status auto-clears after delay (no manual intervention needed)
- Update createBackup() with completion delay and status messages
- Update restoreFromFile() with completion delay and status messages
- Update restoreFromServer() with completion delay and status messages
- Remove all redundant toast messages from backup/restore operations
- Add exception logging (Logger.e) to replace swallowed exceptions
- Integrate BackupProgressCard in BackupSettingsScreen (visible during operations)
- Add delayed restore execution (200ms) to ensure dialog closes before progress shows
- Add DIALOG_CLOSE_DELAY_MS constant (200ms)
- Add STATUS_CLEAR_DELAY_SUCCESS_MS constant (2000ms)
- Add STATUS_CLEAR_DELAY_ERROR_MS constant (3000ms)
- Add 6 new backup completion/error strings (EN + DE)
- Import kotlinx.coroutines.delay for status delay functionality
This commit is contained in:
inventory69
2026-02-10 15:24:32 +01:00
parent 4a621b622b
commit 3e946edafb
5 changed files with 182 additions and 46 deletions

View File

@@ -443,6 +443,21 @@
<string name="about_changelog_title">Changelog</string>
<string name="about_changelog_subtitle">Vollständige Versionshistorie</string>
<!-- v1.8.0: Backup Progress -->
<string name="backup_progress_creating">Backup wird erstellt…</string>
<string name="backup_progress_restoring">Backup wird wiederhergestellt…</string>
<string name="backup_progress_restoring_server">Notizen werden vom Server heruntergeladen…</string>
<!-- v1.8.0: Backup Progress - Completion -->
<string name="backup_progress_complete">Backup erstellt!</string>
<string name="restore_progress_complete">Wiederherstellung abgeschlossen!</string>
<string name="restore_server_progress_complete">Download abgeschlossen!</string>
<!-- v1.8.0: Backup Progress - Error -->
<string name="backup_progress_failed">Backup fehlgeschlagen</string>
<string name="restore_progress_failed">Wiederherstellung fehlgeschlagen</string>
<string name="restore_server_progress_failed">Download fehlgeschlagen</string>
<string name="about_privacy_title">🔒 Datenschutz</string>
<string name="about_privacy_text">Diese App sammelt keine Daten. Alle Notizen werden nur lokal auf deinem Gerät und auf deinem eigenen WebDAV-Server gespeichert. Keine Telemetrie, keine Werbung.</string>