* Rename migration bg drawable and add night variant
* Move `migration` package from `ftue` to `messages:impl` module
* Update `SunsetPage` with light and dark modes
* Fix bloom colors when nested theme is used
* Integrate the migration screen in the room list
* Fix `WaitListView` cancel button color
* Clear migration store when removing the app's cache
---------
Co-authored-by: ElementBot <benoitm+elementbot@element.io>
The passphrase is stored in the SessionData, so that a Session created by Element Android can be restored.
Existing sessions will have a null passphrase and will continue to work.
New session will use a passphrase, only on Nightly and Debug build for now.
## Type of change
- [ ] Feature
- [ ] Bugfix
- [x] Technical
- [ ] Other :
## Content
Dagger now provides the app's `cacheDir` when requesting a `@CacheDirectory File` type.
## Motivation and context
To support some upcoming code that needs the `cacheDir` to be changed during tests.
## Type of change
- [ ] Feature
- [ ] Bugfix
- [x] Technical
- [ ] Other :
## Content
Includes the `coreLibraryDesugaring(libs.android.desugar)` dependency in all modules which use one of our gradle plugins.
## Motivation and context
Right now desugaring is enabled also in library modules but the desugar dependency is not included in those.
This causes some unwanted side effects such as being unable to run compose previews in an emu.
This change will also include the desugar dependency in those libraries.
* Revert "Ensure the sync is started when receiving a Push, to ensure that the encryption loop is running."
This reverts commit 82f6f358a7.
* Integrate SDK from https://github.com/matrix-org/matrix-rust-sdk/pull/2505
* Enable retryDecryption() on the NotificationClient.
* SDK 0.1.49 - Encryption Sync is enabled by default now, and retryDecryption is the default too.
* Remove feature flag `UseEncryptionSync`
* Fix sample project build
* Exclude `DeveloperSettingsPresenter` from kover verification.
* Add changelog
---------
Co-authored-by: Jorge Martín <jorgem@element.io>
* Change RoomSummaryDataSource to RoomListService to better reflects the rust api
* Better Sync management
* Sync: improve sync spinner rendering
* Sync: make test compiles
* Sync: add more test for sync spinner
* Sync: more clean-up
* Sync: pr review
---------
Co-authored-by: ganfra <francoisg@element.io>
* Align TracingConfiguration with iOS
* Create TracingTree from rust sdk
* tracing: create a working configuration with RustTracingTree
* Tracing: WIP implementation of new api
* Tracing: clean up
* Tracing: use the latest api
* Tracing: some more clean up
* Remove generated logcat file after compressing it
---------
Co-authored-by: ganfra <francoisg@element.io>
Co-authored-by: Jorge Martín <jorgem@element.io>
* Extract a RustMatrixClientFactory
* Use serverVersions api on client builder to speed up startup.
* Clean up
* Fix compilation of sample
---------
Co-authored-by: ganfra <francoisg@element.io>
- `syncUpdateFlow` becomes a `val` and always returns the same instance of the underlying `StateFlow` instead of different `Flow` instances to allow consumers not to remember the `Flow` and not to specify an unneeded initial value.
- `timeline` becomes a `val` as it already always returns the same instance.
- Amends calling code accordingly
- Removes a few unneeded `val`s in `RustMatrixClient
- Fixes a small bug in `MessagesPresenter` that allowed to sometime show a newly created room's name as "Empty room" (changes `LaunchedEffect(syncUpdateFlow)` to `LaunchedEffect(syncUpdateFlow.value)`)