* Add banner for optional migration to native sliding sync
- Add `MatrixClient.isNativeSlidingSyncSupported()` and `MatrixClient.isUsingNativeSlidingSync` to check whether the home server supports native sliding sync and we're already using it.
- Add `NativeSlidingSyncMigrationBanner` composable to the `RoomList` screen when the home server supports native sliding sync but the current session is not using it.
- Add an extra logout successful action to the logout flow, create `EnableNativeSlidingSyncUseCase` so it can be used there.
* Update screenshots
* Make sure the sliding sync migration banner has lower priority than the encryption setup ones
---------
Co-authored-by: ElementBot <benoitm+elementbot@element.io>
* Fix Element Call closing automatically on API 34
It seems like registering a user leave hint listener way too early was causing the activity to try to enter PiP erroneously and that led to the activity closing instead.
* Use `ClientSessionDelegate` to ensure tokens are always updated.
Refreshed tokens on client restoration might not have been stored to disk if the token refresh happened before `RustMatrixClient` was built and the `ClientDelegate` was set in it.
Using `ClientSessionDelegate` should ensure the tokens refreshed callback is called at any point in time.
* Improve how assigning the Client works, fix docs
* Fix review comments
* Introduce value class UniqueId.
* Allow reactions on non-sent Event, the SDK can now handle it.
Also the SDK will manage local echo for reactions.
* Update dependency org.matrix.rustcomponents:sdk-android to v0.2.41
* Fixes after SDK upgrade:
- Use `ClientBuilderSlidingSync` to set `SlidingSyncVersionBuilder` in `RustMatrixClientFactory`.
- `Room.toggleReaction(emoji: String, eventId: EventId)` is now `Room.toggleReaction(emoji: String, uniqueId: UniqueId)`, since reactions can now be applied to local echoes too in the SDK.
* Rename exception case
* Fix wrong error case being used in test
---------
Co-authored-by: Benoit Marty <benoit@matrix.org>
Co-authored-by: Benoit Marty <benoitm@matrix.org>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Jorge Martín <jorgem@element.io>
This should fix both configuration cache and reproducible F-droid builds.
Cleanup and remove gplay/fdroid diff on open source licenses.
Co-authored by @jmartinesp