* De-duplicate sonar job in the CI
* Remove workaround for `src/*/kotlin` folders
* Downgrade the sonarqube plugin version
* Try increasing workers for this job, since it's quite slow
* Warn about regression in latest sonarqube release
* Forbid backups to prevent cryptographic issues
* 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>
* First attempt at implementing encrypted history banner and removing old UTDs
* Get the right behavior in the timeline
* Implement the designs
* Extract post-processing logic, add tests
* Add encryption banner to timeline screenshots
* Create FTUE feature to handle welcome screen and analytics
* Move classes to their own packages, add tests for `DefaultFtueState`.
* Remove unnecessary private MutableStateFlow
* Move some FTUE related methods and classes back to the `impl` module
* Handle back press at each FTUE step
* Remove unneeded `TestScope` receiver for `createState` in tests.
* Use light & dark previews for the banner view.
* Move color customization from `TextStyle` to `Text` component.
* Rename `InfoList` design components, use them in `AnalyticsOptInView` too.
* Cleanup MatrixClient.
* Fix copy&paste error
Co-authored-by: Benoit Marty <benoit@matrix.org>
* Fix typo
* Fix Maestro tests
---------
Co-authored-by: ElementBot <benoitm+elementbot@element.io>
Co-authored-by: Benoit Marty <benoit@matrix.org>
* Disable Paparazzi tasks when Kover is running.
It allows us to split the test jobs between unit tests, screenshot test and coverage reports.
* Move Sonar upload to the quality workflow, since we have no lint info in tests.
* Try to improve 'Tests' CI job times
* Remove `-Pci-build=true` for jobs where the debug mode can be explicitly used
* Add some more excluded `*State` values for kover
* Run paparazzi verification at the same time as Kover tasks, otherwise the coverage is lost.
Drop from 90% to 85% to allow for smaller presenters where the
number of untestable instructions generated by kotlin/compose
can reach ~10% of the entire file.
* Fix displaying reaction row in message action list
* Rename `sendState` to `localSendState` and make it nullable.
Create an `isRemote` helper to detect if an event comes from the server instead.
---------
Co-authored-by: ElementBot <benoitm+elementbot@element.io>
Use member count instead of counting members
For the room details screen, use the member count as supplied by
matrix instead of waiting for the entire member list to be
retrieved and then manually adding up all the relevant users.
This removes the loading state of the member count, relying on
a spinner on the member list itself if the user actually wants
to see the members. (The performance of that will be improved
separately on the rust side in the future)
Closes#505