Commit graph

338 commits

Author SHA1 Message Date
Benoit Marty
f99081fd47 Remove dependencies to other presenters from RootPresenter 2024-10-07 17:45:16 +02:00
bmarty
e25ba65170 Sync Strings from Localazy 2024-10-07 00:28:33 +00:00
Jorge Martin Espinosa
79c17f714f
Use Anvil KSP instead of the Square KAPT one (#3564)
* Use Anvil KSP instead of the Square KAPT one

* Fix several configuration cache, lint and test issues

* Allow incremental kotlin compilation in the CI

* Workaround Robolectric + Compose issue that caused `AppNotIdleException`

* Update the `enterprise` commit hash

* Update screenshots

---------

Co-authored-by: ElementBot <android@element.io>
2024-10-02 11:52:17 +00:00
Jorge Martin Espinosa
eeec7cc785
Centralise the DI code generation logic (#3562)
* Create Anvil extension helper

* Use the helper everywhere
2024-09-30 12:20:28 +00:00
bmarty
86373ad1f7 Sync Strings from Localazy 2024-09-30 00:26:52 +00:00
bmarty
1768f24fd0 Sync Strings from Localazy 2024-09-23 00:23:49 +00:00
bmarty
4583ffeaf9 Sync Strings from Localazy 2024-09-17 11:05:35 +00:00
bmarty
bb0a281342 Sync Strings from Localazy 2024-09-16 18:40:24 +00: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
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
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
ganfra
d3420da599 Pinned messages list : improve and fix code after PR review. 2024-09-05 17:40:50 +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
ganfra
e840581247 Pinned messages list : navigation from room details 2024-09-03 09:41:30 +02:00
ganfra
90beb0a7f1 Pinned events : better navigation from ViewInTimeline or permalink 2024-08-30 18:28:45 +02:00
Benoit Marty
ad8e8305eb Add banner entry point to set up recovery 2024-08-29 18:34:55 +02:00
Jorge Martín
5239e5ce81 Fix lint issues 2024-08-13 08:55:06 +02:00
Jorge Martín
ee7a31cace Extract OIDC to its own module 2024-08-13 08:55:05 +02:00
Benoit Marty
5bda29ca7e
Rework FakeMatrixRoom so that it contains only lambdas. (#3229)
* Upgrade lint to 8.7.0-alpha01

* FakeMatrixRoom: lambda everywhere

Fix test compilation issues
2024-07-22 10:39:48 +02:00
renovate[bot]
05e56e1ebc
Update dependency org.matrix.rustcomponents:sdk-android to v0.2.33 (#3220)
* Update dependency org.matrix.rustcomponents:sdk-android to v0.2.33

* Fix API breaks

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Jorge Martín <jorgem@element.io>
2024-07-19 13:33:27 +02:00
Benoit Marty
e48b958d52 When clearing cache, ensure that SessionPreferencesStore is removed from the cache.
Fixes blank screen after clear cache.
Also cleanup the codebase.
2024-07-08 16:48:40 +02:00
Jorge Martin Espinosa
b0cebf5ca0
Improve screenshot testing with ComposablePreviewScanner (#3125)
* Use ComposablePreviewScanner to rework how screenshot testing works
* Add test sharding
* Update screenshots
* Fixes for Element Gallery

---------

Co-authored-by: ElementBot <benoitm+elementbot@element.io>
Co-authored-by: Benoit Marty <benoit@matrix.org>
2024-07-03 13:05:06 +02:00
Benoit Marty
8cc5f35e0c Fix image not rendering after clearing cache. 2024-06-24 13:58:15 +02:00
ganfra
b874d3e38c
Merge branch 'develop' into feature/fga/sending_queue_iteration 2024-06-19 13:54:24 +02:00
ganfra
6e7e024a2d Sending queue : change a bit the logic to re-enable sending queue. 2024-06-19 12:56:04 +02:00
Benoit Marty
5420cd01ad Typo 2024-06-19 09:10:41 +02:00
Benoit Marty
874bf5b901 Ensure that process recreation also use the restoreMutex 2024-06-18 18:33:04 +02:00
Benoit Marty
d69a5ee1a1 Also fix same issue for analytics. 2024-06-18 11:08:25 +02:00
Benoit Marty
bc30aee359 Iterate on sessionVerificationService.sessionVerifiedStatus and fix tests. 2024-06-18 11:02:19 +02:00
Benoit Marty
d97db21d75 Rather use NoDistributorsAvailable, it has more chance to happen IRL. 2024-06-17 18:03:00 +02:00
Benoit Marty
892a6d5503 Add test about selecting the first provider with a distributor. 2024-06-17 17:54:55 +02:00
Benoit Marty
0908e9b9e4 Fix test issue. 2024-06-17 17:49:01 +02:00
Benoit Marty
e12f723ff7 Fix test compilation issue. 2024-06-17 17:38:10 +02:00
Benoit Marty
b4b407a69e Store the first provider even if no distributor is available, else error in troubleshoot test will not be accurate.
Also when registering for the first time, pick the fist available provider with at least one distributor.
2024-06-17 17:36:39 +02:00
Benoit Marty
5180ce388c Add a shortcut to navigate to the notification settings in case of error. 2024-06-17 16:29:10 +02:00
Benoit Marty
64930e4435 Add ability to not show the pusher registration again. 2024-06-17 11:38:32 +02:00
Benoit Marty
725c3838af Render an error dialog in case registering a pusher fails. 2024-06-17 11:30:23 +02:00
Benoit Marty
21ce1c40b3 Add pusher status in the state.
It improve the tests and we may want to render errors in the View at some point.
2024-06-17 11:30:23 +02:00
Benoit Marty
3d5951cbf0 Add test on pusher registration 2024-06-17 11:30:22 +02:00
Benoit Marty
68d2a1af8b More log. 2024-06-17 11:30:22 +02:00
Benoit Marty
247b60b9ce Add Timber tag. 2024-06-17 11:30:21 +02:00
Benoit Marty
101a6e6ff2 Ensure that the code is not run twice. 2024-06-17 11:30:21 +02:00
Benoit Marty
acde970f01 Extract function and add more logs. 2024-06-17 11:30:21 +02:00
Benoit Marty
907fae10ac Pusher add more log and change comment to log. 2024-06-17 11:30:20 +02:00
ganfra
3b7d021fe1 Sending queue : rename const for more clarity. 2024-06-13 13:03:04 +02:00
ganfra
5765a754fc Fix formatting issues 2024-06-12 15:31:59 +02:00
ganfra
9250745333 Sending queue : adjust to match the latest rust api 2024-06-12 15:15:04 +02:00
ganfra
b927daffe7 Merge branch 'develop' into feature/fga/message_queuing 2024-06-11 17:08:47 +02:00
ganfra
a603855933 Sending queue : code quality 2024-06-11 17:05:12 +02:00