Commit graph

2992 commits

Author SHA1 Message Date
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
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
Valere
d059474998 Doc | Remove outdated comment about flags default values 2024-09-12 11:51:43 +02:00
Benoit Marty
fac919e933 Remove process extension and provide isInit parameter to the processors. 2024-09-12 09:21:53 +02:00
Benoit Marty
f87422a022 Fix filtering of Event at the beginning of DM. 2024-09-12 09:21:53 +02:00
Benoit Marty
90e51dc9fa Fix detekt false positive. 2024-09-11 20:41:58 +02:00
Benoit Marty
31bcd506e0 Fix API break 2024-09-11 20:10:48 +02:00
Benoit Marty
5a8658253a
Merge pull request #3442 from element-hq/feature/bma/deviceId
DeviceId and cleanup.
2024-09-11 11:01:31 +02:00
Benoit Marty
6d12ff09b8 RustMatrixRoom do not need the SessionData anymore. 2024-09-11 10:03:22 +02:00
Benoit Marty
88b0eff0fe Introduce value class "DeviceId" 2024-09-11 09:52:25 +02:00
ganfra
5dab1fdf4d Pinned messages : enabled by default 2024-09-10 13:56:00 +02:00
Jorge Martin Espinosa
67e262fdc8
Add banner for optional migration to simplified sliding sync (#3429)
* Add banner for optional migration to native sliding sync

- Add `MatrixClient.isNativeSlidingSyncSupported()` and `MatrixClient.isUsingNativeSlidingSync` to check whether the home server supports native sliding sync and we're already using it.
- Add `NativeSlidingSyncMigrationBanner` composable to the `RoomList` screen when the home server supports native sliding sync but the current session is not using it.
- Add an extra logout successful action to the logout flow, create `EnableNativeSlidingSyncUseCase` so it can be used there.

* Update screenshots

* Make sure the sliding sync migration banner has lower priority than the encryption setup ones

---------

Co-authored-by: ElementBot <benoitm+elementbot@element.io>
2024-09-09 18:13:19 +02:00
ganfra
b9a581953c
Merge branch 'develop' into feature/fga/timeline_utd 2024-09-09 15:40:26 +02:00
ganfra
74c02cc2d3 Timeline : remove the encrypted history banner for now. 2024-09-09 11:20:50 +02:00
ganfra
a7ab8ee843 Self verification : makes sure cancellation works properly 2024-09-09 10:30:35 +02:00
ganfra
fbce600f2b Self verification : makes sure only one controller is created 2024-09-09 10:30:17 +02:00
Jorge Martin Espinosa
8c015da590
Wait for a room with joined state in /sync after creating it (#3421) 2024-09-09 09:36:49 +02:00
Benoit Marty
6251cb9269
Merge pull request #3422 from element-hq/feature/bma/agpl
Change license to AGPL
2024-09-06 20:40:28 +02:00
Benoit Marty
375ac25d8d Migrate license to AGPL - XML files. 2024-09-06 17:43:35 +02:00
Benoit Marty
f61df38e55 Migrate license to AGPL.
Run script `uv run license-editor --repository ../element-x-android`
2024-09-06 17:19:19 +02:00
Jorge Martin Espinosa
0ec19ec566
Fix new logins with Simplified SS using the proxy (#3417)
* Fix new logins with Simplified SS using the proxy

* Make sure `ClientBuilderSlidingSync.Restored` is always used for restored sessions
2024-09-06 15:09:36 +00:00
ganfra
b802a196fc
Merge pull request #3392 from element-hq/feature/fga/pinned_messages_list
[Feature] Pinned messages list
2024-09-06 16:32:44 +02:00
Benoit Marty
9d91cc6184 Add missing test for AppMigration06 2024-09-06 11:51:59 +02:00
Benoit Marty
56fd455d44 Add missing test for AppMigration05 2024-09-06 11:41:13 +02:00
ganfra
d3420da599 Pinned messages list : improve and fix code after PR review. 2024-09-05 17:40:50 +02:00
ganfra
0fa00cb561
Merge pull request #3393 from element-hq/feature/fga/update_rust_sdk_0.2.42
Rust sdk : update to 0.2.42
2024-09-04 18:26:38 +02:00
Benoit Marty
7254216f36
Merge pull request #3388 from element-hq/feature/bma/pushEndpoint
Unified push endpoint: do not fallback to default endpoint in case of failure and add troubleshoot test.
2024-09-04 18:19:34 +02:00
ganfra
91a44f6380 Rust sdk : update to 0.2.42 2024-09-04 16:37:46 +02:00
ganfra
c30398ccc7 Pinned messages: clean code 2024-09-04 14:27:18 +02:00
ganfra
12e7e05551
Merge branch 'develop' into feature/fga/pinned_messages_list 2024-09-04 14:11:53 +02:00
Benoit Marty
90af83b3ea Fix the test according to the behavior change. 2024-09-04 12:23:52 +02:00
ganfra
51f7599c38 Pinned messages list : fix all tests after changes 2024-09-04 12:09:17 +02:00
Benoit Marty
4b7c13dac8 Let UnifiedPushProvider use UnifiedPushCurrentUserPushConfigProvider 2024-09-04 11:42:40 +02:00
Benoit Marty
5b478b3c48 Fix injection issue. 2024-09-04 11:31:46 +02:00
Benoit Marty
afa19f4081 Fix quality issue. 2024-09-04 11:16:20 +02:00
Benoit Marty
79795af723 Imporve logs. 2024-09-04 11:12:21 +02:00
Benoit Marty
e05eefb766 Remove const val PUSH_GATEWAY_PATH, it makes the code more complex for no added value. 2024-09-04 11:09:27 +02:00
Benoit Marty
9e60fa9367 Add missing test on reset methods. 2024-09-04 10:57:14 +02:00
Jorge Martin Espinosa
2c8b0d0b95
Make sure to save the tokens the Client might return when its session is restored (#3378)
* Use `ClientSessionDelegate` to ensure tokens are always updated.

Refreshed tokens on client restoration might not have been stored to disk if the token refresh happened before `RustMatrixClient` was built and the `ClientDelegate` was set in it.

Using `ClientSessionDelegate` should ensure the tokens refreshed callback is called at any point in time.

* Improve how assigning the Client works, fix docs

* Fix review comments
2024-09-04 10:54:31 +02:00
Benoit Marty
a81448c243 Always use the custom url, even if no Matrix gateway is detected. 2024-09-04 10:48:31 +02:00
renovate[bot]
9fb82a1e86
Update dependency org.matrix.rustcomponents:sdk-android to v0.2.41 (#3384)
* Introduce value class UniqueId.

* Allow reactions on non-sent Event, the SDK can now handle it.

Also the SDK will manage local echo for reactions.

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

* Fixes after SDK upgrade:

- Use `ClientBuilderSlidingSync` to set `SlidingSyncVersionBuilder` in `RustMatrixClientFactory`.
- `Room.toggleReaction(emoji: String, eventId: EventId)` is now `Room.toggleReaction(emoji: String, uniqueId: UniqueId)`, since reactions can now be applied to local echoes too in the SDK.

* Rename exception case

* Fix wrong error case being used in test

---------

Co-authored-by: Benoit Marty <benoit@matrix.org>
Co-authored-by: Benoit Marty <benoitm@matrix.org>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Jorge Martín <jorgem@element.io>
2024-09-03 20:09:33 +02:00
Jorge Martin Espinosa
5920fd3f45
Make pinned events required state in SlidingSync (#3385)
This is needed to always have the pinned events of a room as soon as we open it.
2024-09-03 17:44:48 +02:00
Benoit Marty
ae3fd89491
Merge pull request #3366 from element-hq/feature/bma/fixAvatarLoading
Fix avatar sometimes not loading
2024-09-03 10:47:53 +02:00
Benoit Marty
91a81d18e4
Merge pull request #3370 from element-hq/feature/bma/cacheFile
Provide distinct cache directory to the Rust SDK.
2024-09-03 10:27:47 +02:00
Benoit Marty
951dff8951 Fix test compilation issue. 2024-09-03 10:01:45 +02:00