Commit Graph

656 Commits

Author SHA1 Message Date
Jorge Martin Espinosa
49e1cfed42 Fix verification failed issue, simplify verification logic (#3830)
* Simplify session verification:

- Reuse Rust `Client` instances created on the login process so we don't need to restore one right before the session verification.
- Remove unnecessary sources of verification state updates.
- Add an intermediate FTUE flow step which will display an indeterminate progress indicator instead of a blank screen.

* Remove unnecessary workaround: the SDK should already handle this

* Add regression tests for noop analytics service usage.

* Add `services.analytics.noop` module to the test dependencies

---------

Co-authored-by: Benoit Marty <benoit@matrix.org>
2024-11-08 16:42:27 +01:00
renovate[bot]
9042ed6458 Update dependency org.matrix.rustcomponents:sdk-android to v0.2.60 (#3827)
* Update dependency org.matrix.rustcomponents:sdk-android to v0.2.60

* Fix SDK API breaks:

- Map new `QueueWedgeError` cases.
- Add `MediaUploadOnSendQueue` feature flag enabled on debug and nightly builds: this will by used by `Timeline.send*` media functions fot its new `useSendQueue` parameter.

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Jorge Martín <jorgem@element.io>
2024-11-07 15:25:55 +01:00
ganfra
1e12d2cb71 Merge pull request #3809 from element-hq/renovate/org.matrix.rustcomponents-sdk-android-0.x
fix(deps): update dependency org.matrix.rustcomponents:sdk-android to v0.2.59
2024-11-06 17:25:27 +01:00
ganfra
f8d4b11f56 rust sdk : handle api breaks for 0.2.59 2024-11-06 16:31:25 +01:00
ganfra
f253d8d93b Merge pull request #3804 from element-hq/feature/fga/update_create_room_flow
Knocking : update create room flow
2024-11-06 15:59:27 +01:00
ganfra
2c107eeab3 create room : start integrating the address field 2024-11-04 15:39:23 +01:00
ganfra
93bb02ef3b create room : branch the join rule override 2024-11-04 15:39:22 +01:00
Benoit Marty
19c56cdbe3 Send caption with media 2024-11-04 14:24:39 +01:00
Benoit Marty
d1b3ecab36 Incoming session verification request
Add more log to the state machines
Ensure the block cannot be cancelled, else if the Rust SDK emit a new state during the API execution, the state machine may cancel the api call.
Let VerificationFlowState values match the SDK api for code clarity.
Rename sub interface for clarity.
Migrate tests to the new FakeVerificationService.
2024-10-29 09:26:15 +01:00
Valere
371799fdad Bump rust-sdk version to rust-sdk 0.2.57 (#3735)
* Bump rust-sdk version to rust-sdk 0.2.57

* rust sdk update: Support persisted WedgeQueueError

* Trust & Decoration | Support new expected UTD causes

* Room Subscribtion settings not needed anymore (see https://github.com/matrix-org/matrix-rust-sdk/pull/4159)

* File/Attachement upload: update to support `storeInCache`

* feat(knock): update API to use reason and serverNames

* Add another `Konsist` exception

* Update screenshots

---------

Co-authored-by: Jorge Martín <jorgem@element.io>
Co-authored-by: ElementBot <android@element.io>
Co-authored-by: Benoit Marty <benoit@matrix.org>
2024-10-24 16:45:16 +02:00
ganfra
52053fcf38 Merge pull request #3725 from element-hq/feature/fga/knock_request_to_join
Feature: knock request to join
2024-10-23 18:50:32 +02:00
ganfra
2ffd46061e knock : improve a bit code and add tests. 2024-10-23 15:44:00 +02:00
ganfra
c135f5a3b9 knock : add knock function to the matrix client 2024-10-22 16:22:19 +02:00
ganfra
1c72135148 knock : use PendingRoom instead of InvitedRoom 2024-10-22 16:22:19 +02:00
Benoit Marty
200ae60a8b Verified user badge.
Add disable action to verify user.
2024-10-22 14:09:35 +02:00
Benoit Marty
9852ce6821 Fix API Break: introduce EventOrTransactionId 2024-10-18 08:49:11 +02:00
Benoit Marty
d6407d6995 Restore fun interface for a sweeter code. 2024-10-16 17:12:46 +02:00
Benoit Marty
62f6791865 Remove unused isLocal field. 2024-10-16 16:19:04 +02:00
Benoit Marty
83de862fc1 Fix other API change: EventShieldsProvider and EventTimelineItemDebugInfoProvider have been replaced by LazyTimelineItemProvider 2024-10-16 16:10:16 +02:00
Benoit Marty
5027fb5fe3 Fix other API change: map new value Membership.KNOCKED 2024-10-16 16:09:33 +02:00
Benoit Marty
2724815d79 Fix other API change: body renamed to filename 2024-10-16 16:09:32 +02:00
Benoit Marty
3f58f4b793 Fix API update regrading OidcPrompt. 2024-10-16 14:58:04 +02:00
Benoit Marty
95a49a626d Merge pull request #3574 from element-hq/feature/bma/improveMediaModel
Clarify model for Event with attachment
2024-10-16 14:57:05 +02:00
Benoit Marty
9fc6b01a0c Add userId in identity change warning banner #3678 2024-10-15 18:02:23 +02:00
ganfra
f43c92723b Merge pull request #3631 from element-hq/feature/fga/rework_room_summary
Rework room summary
2024-10-09 11:44:45 +02:00
ganfra
bd59d115e6 misc : rework getRoomInfoFlow (by using getRoomSummaryFlow) 2024-10-08 21:36:38 +02:00
ganfra
d73b1bad91 misc : remove direct usage of RoomSummary in UI and let RoomSummary use RoomInfo. 2024-10-08 21:34:34 +02:00
Benoit Marty
f7a3f707fb Improve mapping regarding filename, caption and formattedCaption 2024-10-08 17:12:48 +02:00
Benoit Marty
c8ff0d5641 Fix code quality. 2024-10-08 11:09:46 +02:00
Benoit Marty
9d815d26b4 Pin user identity. 2024-10-07 22:19:13 +02:00
Benoit Marty
9b94edcfa3 Render PinViolation above the composer. 2024-10-07 22:18:32 +02:00
Valere
0cc751d168 dep | Adapt rust-sdk, rename PreviouslyVerified to VerificationViolation 2024-10-04 12:37:33 +02:00
ganfra
8181572dde timeline : improve jumpTo precision (introducing animateScrollToItemCenter) 2024-10-03 15:33:03 +02:00
ganfra
3a1c20a0fe timeline : makes typingNotification item part of the timelineItems. 2024-10-03 13:14:14 +02:00
renovate[bot]
bb11bc5494 Update dependency org.matrix.rustcomponents:sdk-android to v0.2.50 (#3565)
* Adapt to changes in the SDK

* Update dependency org.matrix.rustcomponents:sdk-android to v0.2.50

* Use lambda instead of overriding the `EventDebugInfoProvider` interface

* Fix test proposal.
We may find a better way to compare data class instance if we need to do more comparison in the future...

---------

Co-authored-by: Jorge Martín <jorgem@element.io>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Benoit Marty <benoit@matrix.org>
2024-10-01 09:44:52 +02:00
Jorge Martin Espinosa
2efdb3ae45 Centralise the DI code generation logic (#3562)
* Create Anvil extension helper

* Use the helper everywhere
2024-09-30 12:20:28 +00:00
Benoit Marty
93e3d60ae9 Remove ability to change default common trace level 2024-09-23 17:21:39 +02:00
Benoit Marty
08b63943b8 Add unit test on RustNotificationService
And fix mapping error.
2024-09-19 19:43:40 +02:00
Benoit Marty
7626ace24c Change type of items in activeRoomCallParticipants from String to UserId 2024-09-18 17:16:06 +02:00
Benoit Marty
b842a53106 Change type of items in alternativeAliases from String to RoomAlias 2024-09-18 17:16:06 +02:00
Benoit Marty
5893b4d0b4 Distinguish between roomId and roomAlias. 2024-09-18 12:27:07 +02:00
Benoit Marty
ea355d29ed Account deactivation. 2024-09-17 16:51:11 +02:00
Benoit Marty
8c424c63e6 Merge pull request #3467 from element-hq/feature/bma/accountCreation
Temporary account creation using Element Web.
2024-09-16 16:52:26 +02:00
ganfra
60365e46a5 Merge pull request #3461 from element-hq/feature/fga/send_failure_identity_changes
Require acknowledgement to send to a verified user if their identity changed or if a device is unverified.
2024-09-16 16:00:18 +02:00
ganfra
6c29b5c694 Send failure verified user : add some comments and logs. 2024-09-16 15:22:40 +02:00
Jorge Martin Espinosa
b91d13b466 Fix not being able to decline an invite from the room list (#3466)
* Add `InvitedRoom` to wrap Rust SDK Rooms in 'invited' membership state.

At the moment, this is a wrapper that allows us to call `Room.leave()` without having to initialise the room's timeline (which is impossible).

* Add `MatrixRoom.getInvitedRoom(roomId)` to get one of these rooms.

Also, `RustRoomFactory` now has a `createInvitedRoom` method for this.

* Adapt `AcceptDeclineInvitePresenter` to use the new APIs.
2024-09-16 13:02:20 +00:00
Benoit Marty
bed7776674 Account Creation using a WebView 2024-09-16 12:24:47 +02:00
Jorge Martin Espinosa
03786c1fd2 Add forced logout flow when the proxy is no longer available (#3458)
* Add `MatrixClient.isSlidingSyncProxySupported` function

* Update localazy strings

* Modify `ErrorDialog` to have an `onSubmit` call, which will be used for the submit action.

Also make the title text optional and dismissing the dialog by tapping outside/going back configurable.

* Check if a forced migration to SSS is needed because the proxy is no longer available.

In that case, display the non-dismissable dialog and force the user to log out after enabling SSS.

* Enable native/simplified sliding sync by default.

* Refactor the login to make sure we:

1. Always try native/simplified sliding sync login first, if available.
2. Then, if it wasn't available or failed with an sliding sync not supported error, try with the proxy instead (either discovered proxy or forced custom one).

* Move logic to `LoggedInPresenter` and the UI to `LoggedInView`

* Update screenshots

---------

Co-authored-by: ElementBot <benoitm+elementbot@element.io>
2024-09-16 09:13:02 +00:00
ganfra
b38f016677 Send failure verified user : resolve ui and logic 2024-09-13 16:40:07 +02:00
ganfra
ba70fbb77e Send state : introduce Failed.VerifiedUser interface. 2024-09-13 16:40:06 +02:00