* Show the key upload progress when waiting to log out.
Add some basic view model tests too.
* Show a network suggestion if key upload doesn't report any progress during logout.
* Show recovery instead of verification if this is the last session and recovery is set up
* Rename `recoveryKeyState` to `recoveryState`
* Remove duplicates on session security state changes.
* Fix missing "Save recovery key" button
* Fix unit tests
* Rename `isLastDevice` to `isOnlyDeviceLeft`
* Address PR comments
* Make sure the indicator for disabling backups is dismissed together with the screen
* Get rid of the .disabled key backup state as it has no correspondant on the rust side and is confusing
* Remove superflous BackupState extensions, add more logs
* Show the recovery section if key backup is anything **but** disabled
* Don't show an action on secure backup if its current state is unknown
* Do not show a badge on the home screen avatar while the recovery state is unknown
* Do not assume key backup is disabled when its state is unknown. If the state is unknown, check if a backup exists remotely.
* Dedupe remote backup state requests and handle task cancellations
* Adopt Rust side secure backup APIs (incomplete, based on poljar/backup-pr)
* Implement the home screen recovery key confirmation banner.
* Update with the latest Rust changes.
The loading button for .unknown was incorrect. It should be treated as disabled.
---------
Co-authored-by: Doug <douglase@element.io>
* Converge on UserSessionFlowCoordinator logout confirmation
* Add logout confirmation screen strings to untranslated.
* Fix chat backup learn more URl fragment.
* Implement logout flows that check recovery and key backup for the last session
* Move logout confirmation screen strings to localazy
* Change encrypted timeline item copy to "Waiting for decryption key"
* Use different encrypted history banner based on key backup states
* Introduce a SettingsFlowCoordinator and implement navigation directly to the secure backup screen from the logout flows.
* Fix **mocked** secure backup controller flows
* Simplify encrypted history banner logic
* Address PR comments