Commit Graph

189 Commits

Author SHA1 Message Date
bmarty f549e7bba2 Sync Strings from Localazy 2025-02-17 00:30:17 +00:00
Benoit Marty 54af229245 Add unit test for PinUnlockState 2025-02-06 16:51:18 +01:00
Benoit Marty 5456f0e38e Merge pull request #4226 from element-hq/feature/bma/themeOverride
Theme override
2025-02-06 16:48:16 +01:00
Jorge Martin Espinosa 3c87fb05b2 Create SyncOrchestrator (#4176)
* Create `SyncOrchestrator` to centralise the sync start/stop flow through the whole app: the decision is based on several inputs: sync state, network available, app in foreground, app in call, app needing to sync an event for a notification.

* Make network monitor return network connectivity status, not internet connectivity

* Don't stop the `SyncService` when network connection is lost, let it fail instead. This prevents an issue when using the offline mode of the SDK, which made the wrong UI states to be shown when the `SyncState` is `Idle` (that is, after the service being manually stopped).

* Rename `NetworkStatus.Online/Offline` to `Connected/Disconnected` so they're not easily mistaken with internet connectivity instead
2025-02-06 16:36:57 +01:00
Benoit Marty 07d4778ae5 Use ElementTheme instead of MaterialTheme 2025-02-06 15:10:15 +01:00
Benoit Marty 1654f569a0 Add ability to EnterpriseService to override theme colors 2025-02-06 15:10:14 +01:00
bmarty be91da966a Sync Strings from Localazy 2025-02-03 00:29:01 +00:00
Jorge Martin Espinosa a74a62c090 Remove or replace unnecessary BackHandler calls (#4148)
* Remove/replace `BackHandler` calls:

- For `UserProfileView`, remove the redundant `BackHandler` -> `navigateUp()` call.
- For `SetupBiometricView`, remove the `enabled = true` parameter, as this is the default value.
2025-01-15 10:43:26 +01:00
Benoit Marty 97f3be3dc5 Apply dual licenses: AGPL + Element Commercial to file headers.
2 replace all actions have been performed:
- "SPDX-License-Identifier: AGPL-3.0-only" to "SPDX-License-Identifier: AGPL-3.0-only OR LicenseRef-Element-Commercial"
- "Please see LICENSE in the repository root for full details." to "Please see LICENSE files in the repository root for full details."
2025-01-07 10:05:04 +01:00
bmarty 2758adb646 Sync Strings from Localazy 2024-12-30 10:12:13 +00:00
bmarty 45db2a97ad Sync Strings from Localazy 2024-12-23 00:16:39 +00:00
bmarty ff3fbe9cbf Sync Strings from Localazy 2024-12-16 00:28:36 +00:00
bmarty e8218b3a7c Sync Strings from Localazy 2024-12-09 00:30:45 +00:00
bmarty 5f8007d6f1 Sync Strings from Localazy 2024-12-02 00:30:02 +00:00
ganfra 9ad8c35761 Merge pull request #3930 from element-hq/feature/fga/check_fingerprint_before_enabling
change : confirm biometric before allowing biometric unlock.
2024-11-25 14:32:36 +01:00
ElementBot d9f8e9ce58 Sync Strings (#3936)
Co-authored-by: bmarty <3940906+bmarty@users.noreply.github.com>
2024-11-25 09:06:57 +00:00
ganfra 2b75fffeb2 change : confirm biometric before allowing biometric unlock. 2024-11-22 17:13:08 +01:00
ElementBot bc59a70043 Sync Strings - add translations to Finnish (#3883)
Co-authored-by: bmarty <3940906+bmarty@users.noreply.github.com>
2024-11-18 11:37:17 +00:00
Benoit Marty c8a58a8be8 Use BigIcon. 2024-10-22 12:02:44 +02:00
Benoit Marty daaaf92a87 Let IconTitleSubtitleMolecule use BigIcon. 2024-10-22 11:53:30 +02:00
bmarty b179518962 Sync Strings from Localazy 2024-10-21 00:27:20 +00:00
Benoit Marty fb52657b12 Let AsyncAction.Confirming be an interface, with a AsyncAction.ConfirmingNoParams data object.
This will allow inheritance of `AsyncAction.Confirming` with parameter(s).
2024-10-14 10:49:55 +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
renovate[bot] 9756afc5d1 Update dependency androidx.compose:compose-bom to v2024.09.00 (#3399)
* Update dependency androidx.compose:compose-bom to v2024.09.00

* Adapt code for changes.

* Workaround crash when closing the RTE

* Fix broken bottom sheet colors and shape

* Fix tons of warnings and deprecations

* Fix lint issues

* Fix more M3 update changes

* Update screenshots

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Jorge Martín <jorgem@element.io>
Co-authored-by: ElementBot <benoitm+elementbot@element.io>
Co-authored-by: ganfra <francoisg@matrix.org>
Co-authored-by: ElementBot <android@element.io>
2024-09-26 09:30:20 +02:00
bmarty 1768f24fd0 Sync Strings from Localazy 2024-09-23 00:23:49 +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
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
Benoit Marty 61f9b20554 Ensure starting PinUnlockActivity does not crash the application.
Fix regression from #3222 d4f8052696
2024-08-30 16:15:54 +02:00
Benoit Marty aae44875bd Fix test. 2024-08-29 12:38:58 +02:00
Benoit Marty 460e095e78 Provide dark theme parameter. 2024-08-29 12:23:39 +02:00
Benoit Marty cfbd0c4c02 Ensure success logout url is opened in all cases. 2024-08-29 12:16:38 +02:00
Benoit Marty a6e2a5d81f Change PinUnlockState.signOutAction type to AsyncAction. 2024-08-29 11:49:57 +02:00
Benoit Marty 1026a296e3 Make LogoutUseCase.logout return the result of the SDK method. 2024-08-29 11:47:22 +02:00
bmarty cd267249ec Sync Strings from Localazy 2024-08-26 00:25:40 +00:00
bmarty 3e67448006 Sync Strings from Localazy 2024-08-19 00:25:36 +00:00
bmarty 76804d9e48 Sync Strings from Localazy 2024-07-29 00:26:27 +00:00
ganfra 60fdee32bf Merge branch 'develop' into feature/jme/add-simplified-sliding-sync-toggle 2024-07-24 17:35:57 +02:00
ElementBot 1f01bd73c4 Sync Strings (#3232)
Co-authored-by: bmarty <3940906+bmarty@users.noreply.github.com>
2024-07-22 08:59:47 +00:00
Jorge Martín d4f8052696 Unify the internal pinunlock.SignOut and the new LogoutUseCase classes 2024-07-19 19:51:49 +02:00
Benoit Marty 0db221e953 Ensure that pinKeyMaxWidth and pinKeyMaxHeight are never negative.
Fix crash `Exception: java.lang.IllegalStateException: lineHeight can't be negative`
Can be due to the rendering when the Activity is animated maybe?
2024-07-16 16:01:45 +02:00
Benoit Marty 459c99e45f Fix typo. 2024-07-16 15:47:21 +02:00
Benoit Marty eb8d7e2166 Some renaming. 2024-07-10 16:27:29 +02:00
Benoit Marty 85428fbcfb No need to be a member of the class. 2024-07-10 16:26:09 +02:00
Benoit Marty d1a4fd76de Some renaming. 2024-07-10 16:25:20 +02:00
Benoit Marty 6d6de1ae3d Rework. Keep io.element.android.appconfig.LockScreenConfig as simple as possible. 2024-07-10 16:25:20 +02:00
Benoit Marty bb5ae89b2f Introduce ElementThemeApp to avoid code duplication. 2024-07-09 11:10:10 +02:00