* Add support for account provisioning links and route them to the authentication flow.
* Use the provisioning parameters to configure the authentication flow.
* Add UI tests for the provisioned authentication flow.
* Record new preview snapshots.
* Add unit tests.
* Make the domain configurable in the app settings.
* Use the loginHint in the login screen too.
* Introduce a `TimelineItemThreadSummary` object to hold details about threads starting from that particular item
This patch introduces a thread summary object that will be available on main timeline messages that are the root for a given thread.
It currently provides the latest message content and sender for that thread but it will grow to provide info on the number of replies, unreads etc.
It also add a new UI component called `TimelineThreadSummaryView` that makes use of this data and is in turn used by the bubbled styler to render it in the timeline.
The rest of the PR is about refactoring on the `RoomTimelineItemFactory` so that replies and thread summaries use similar paths and builders.
* Add a feature flag for threads
* Address PR comments
* Converge on single implementation for message previews
* Bump the RustSDK to v25.04.09
* Adopt new MsgLike based timeline item structure.
* Move the `replyDetails` and `isThreaded` to the `RoomTimelineItemProperties`
* Restructure the TimelineItemFactory
* Fix line length warning
* Rename `msgLikeContent` to `messageLikeContent` wherever possible.
* Move the `EventTimelineItem` mocks to the SDK mocks folder.
* Introduce a `UserIdentityProxy` and have it combine upstream methods into an easy to digest `UserIdentityVerificationState`. Use it in a dedicated `VerificationBadge` UI component
* Show a DMs counterpart verification state in the room header
* Show a warning on the room details `People` entry when there are identity verification state violations on any of the members.
* Show verification badges in the room member list
* Show a withdraw verification section on the room member details for users that have pinning violations.
* Remove the verification section from the profile screen as there's no reliable way to keep it up to date
- the underlying Rust SDK Olm Machine can be rebuilt without notice which would break any existing user identity change streams.
* Update preview test snapshots
* Manage the secure backup screens with flow coordinators.
* Add UI tests for the EncryptionSettingsFlowCoordinator.
* Realise that the settings flow can't reset anymore and remove the sub-flow 🤦♂️
* Add UI tests for the EncryptionResetFlowCoordinator.
* Add a badge for verified users/room members.
* Reorder subviews.
* Add a (disabled) button to verify other users.
* PR comments.
* Update the SDK.
* Adopt the SDK changes introduced in matrix-rust-sdk/pull/4100
---------
Co-authored-by: Stefan Ceriu <stefan.ceriu@gmail.com>
* Adopt new reaction toggling API introduced in matrix-org/matrix-rust-sdk/pull/4127
* Adopt the changes introduced in matrix-org/matrix-rust-sdk/pull/4111: use the new `TimelineUniqueId` type instead of `String` for unique timeline identifiers.
* Bump the RustSDK to v1.0.58.
* Fix unit tests
* Don't query the homeserver until confirming it (or selecting a different one).
* Setup the infrastructure to test AuthenticationService.
Implement basic tests for configuration & password login.
* Use the real AuthenticationService with a mock Client in all of the tests.
* Add tests for the ServerConfirmationScreenViewModel.
* Remove redundant view state and test for it.