Commit graph

3035 commits

Author SHA1 Message Date
Benoit Marty
e2a4fbbd61 Add unit test on UserSearchResultMapper 2024-09-18 17:16:06 +02:00
Benoit Marty
88004db531 Add unit test on UserProfileMapper 2024-09-18 17:16:06 +02:00
Benoit Marty
2514a7f710 Add unit test on toRoomType 2024-09-18 17:16:06 +02:00
Benoit Marty
8efdf6604b Add unit test on ReceiptType.toRustReceiptType() 2024-09-18 17:16:06 +02:00
Benoit Marty
a60198a716 Add unit test on MatrixRoomInfoMapper 2024-09-18 17:16:06 +02:00
Benoit Marty
97f0b65c03 Change type of items in activeRoomCallParticipants from String to UserId 2024-09-18 17:16:06 +02:00
Benoit Marty
7903223585 Change type of items in alternativeAliases from String to RoomAlias 2024-09-18 17:16:06 +02:00
Benoit Marty
56ac755b62 Add unit test on MessageEventType mappers 2024-09-18 17:16:06 +02:00
Benoit Marty
764b0cf8d3 Add unit test on elementHeroes() 2024-09-18 17:16:06 +02:00
Benoit Marty
03b9a0f313 Add unit test on mappers 2024-09-18 17:16:06 +02:00
Benoit Marty
5b44eab444 Ensure mapping of Rust exceptions cover all cases. 2024-09-18 17:16:06 +02:00
Benoit Marty
5b8e99149a Add unit test on crypto mappers 2024-09-18 17:16:06 +02:00
Benoit Marty
eca112fcc0 Add unit test on providesTracingFilterConfiguration 2024-09-18 17:16:06 +02:00
Benoit Marty
021d7297e5 Add unit test on ProgressWatcherWrapper 2024-09-18 17:16:06 +02:00
Benoit Marty
25fd71cb2c Make sure Throwable.mapAuthenticationException() is exhaustive on mapping ClientBuildException and add test for full coverage. 2024-09-18 17:16:06 +02:00
Benoit Marty
18461fa1f1 Add unit test on QrLoginProgress.toStep() 2024-09-18 17:16:06 +02:00
Benoit Marty
e43491ac5a Add unit test on QrErrorMapper 2024-09-18 17:16:06 +02:00
Benoit Marty
30847e9e1f Add unit test on toAnalyticsJoinedRoom and fix a mapping issue. 2024-09-18 17:16:06 +02:00
Jorge Martin Espinosa
d5ac6dabdf
Fix sliding sync proxy login not working after native SS failure (#3489) 2024-09-18 17:02:49 +02:00
Benoit Marty
352dbdb9cb Cleanup tests. 2024-09-18 14:26:45 +02:00
Benoit Marty
7c56bc4c6b Move FakeRust classes and factories to a fixtures package 2024-09-18 14:23:07 +02:00
Benoit Marty
6b4cce7de3 Code cleanup 2024-09-18 14:14:10 +02:00
Benoit Marty
e95388f3c4
Merge pull request #3486 from element-hq/feature/bma/fixRoomAliasMatcch
Distinguish between roomId and roomAlias.
2024-09-18 13:56:00 +02:00
Jorge Martin Espinosa
c08b8c0416
Make sure the logout action doesn't cause a crash (#3480)
* Make sure the logout doesn't cause a crash

Some reasons why this could happen:
1. The `ClientDelegate` could receive a `didReceiveAuthError` callback call on a logout, which could trigger another logout when every Rust object had already been destroyed.
2. Even though we stop the sync before logging out, `LoggedInFlowNode` will try to start it again automatically when it detects we still have internet connection.

Making sure to unregister the delegate should fix the first part of the issue.

For the other one, adding `RustSyncService.isServiceReady` to check if we should start/stop the service, which is enabled by default and set to false on destroy should help.

* Apply the same patch on account deactivation.

---------

Co-authored-by: Benoit Marty <benoit@matrix.org>
2024-09-18 11:54:54 +00:00
Benoit Marty
1a049832ab Distinguish between roomId and roomAlias. 2024-09-18 12:27:07 +02:00
Benoit Marty
5a6859b251 Make text parts in bold. 2024-09-17 17:39:23 +02:00
Benoit Marty
b87bec6228 Account deactivation. 2024-09-17 16:51:11 +02:00
bmarty
4583ffeaf9 Sync Strings from Localazy 2024-09-17 11:05:35 +00:00
Benoit Marty
265c60a056 Fix test compilation issue. 2024-09-17 11:01:28 +02:00
Benoit Marty
3a0e182ba9 Use new API awaitRoomRemoteEcho to ensure that the room is ready SDK side. 2024-09-17 10:59:26 +02:00
Benoit Marty
beb0bff3cc Use new API awaitRoomRemoteEcho to wait for the created room to be available. 2024-09-17 10:21:27 +02:00
bmarty
bb0a281342 Sync Strings from Localazy 2024-09-16 18:40:24 +00:00
Benoit Marty
cf2c90ea0a
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
47d0c505b5
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
be3ead0db9 Send failure verified user : add some comments and logs. 2024-09-16 15:22:40 +02:00
Jorge Martin Espinosa
7238af7f7f
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
39348d2e7e Account Creation using a WebView 2024-09-16 12:24:47 +02:00
Benoit Marty
764692b90b
Merge pull request #3464 from element-hq/sync-localazy
Sync Strings
2024-09-16 11:50:11 +02:00
Jorge Martin Espinosa
663362ac7f
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
bmarty
1035f9ae60 Sync Strings from Localazy 2024-09-16 00:25:04 +00:00
ganfra
b245c69322 Send failure verified user : set the room key recipient strategy 2024-09-13 16:41:44 +02:00
ganfra
ff368b4072 Send failure verified user : resolve ui and logic 2024-09-13 16:40:07 +02:00
ganfra
416810acca Send state : introduce Failed.VerifiedUser interface. 2024-09-13 16:40:06 +02:00
ganfra
de933b1f34 Send failure verified user : expose new methods on MatrixRoom. 2024-09-13 16:40:06 +02:00
ganfra
e0bc026d5f Send failure verified user : display in ActionListView 2024-09-13 16:40:06 +02:00
ganfra
b2c7ea02fb Design : allow passing ListItemColor to ListItem composable to customise as you want. 2024-09-13 16:40:06 +02:00
ganfra
d22d9f0bd2 Send failure verified user : set the room key recipient strategy 2024-09-13 16:40:06 +02:00
ganfra
da3f5e00dc
Merge pull request #3451 from element-hq/feature/valere/invisible_crypto_feature_flag
Feature/valere/invisible crypto feature flag
2024-09-12 16:29:21 +02:00
Benoit Marty
e4d1428bed Rename isInit to isTimelineInitialized for clarity. 2024-09-12 16:27:52 +02:00
Valere
bb50d3eb96 crypto: Add configuration flag to enable invisible crypto 2024-09-12 14:53:59 +02:00