Commit Graph

211 Commits

Author SHA1 Message Date
renovate[bot] 03b801094b fix(deps): update coil to v3.2.0 (#4712)
* fix(deps): update coil to v3.2.0

* Fix compilation issue. Need to provide an image for preview.

https://coil-kt.github.io/coil/compose/#previews

* Improve preview for images.

* Update screenshots

* More cleanup

* Update screenshots

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Benoit Marty <benoit@matrix.org>
Co-authored-by: ElementBot <android@element.io>
2025-06-05 09:49:27 +02:00
Benoit Marty 5f191d9f9c Fix coroutine scope (#4820)
* Inject the session scope instead of the application scope where it's possible.

* Create AppCoroutineScope annotation to let developers explicitly choose the appropriate CoroutineScope when injecting one.
2025-06-04 15:33:51 +00:00
Jorge Martin Espinosa efdc10e60a Add catchingExceptions method to replace runCatching (#4797)
- Add `runCatchingExceptions` and `mapCatchingExceptions` to replace `runCatching` and `mapCatching`.
- Make `tryOrNull { ... }` catch only exceptions too.
- Apply the changes to the whole project.
- Add new Rust fakes for tests to handle the code that's now unblocked - previously it just threw an `UnsatisfiedLinkError` which we ignored.
- Add a new `detekt-rules` project with a `RunCatchingRule` to prevent `runCatching` and `mapCatching` usages.
2025-06-04 09:02:26 +02:00
ElementBot e8f29a38bf Sync Strings (#4775) 2025-05-30 08:47:39 +00:00
ElementBot 847f8fcbf6 Sync Strings from Localazy (#4648)
Co-authored-by: bmarty <3940906+bmarty@users.noreply.github.com>
2025-04-28 10:59:35 +02:00
ElementBot e3a32ba52e Sync Strings from Localazy (#4612)
Co-authored-by: bmarty <3940906+bmarty@users.noreply.github.com>
2025-04-22 08:57:00 +02:00
ElementBot d9bfcc6c52 Sync Strings (#4590)
* Sync Strings from Localazy

* Fix strings usage after some were moved

* Fix Norwegian string that was causing lint to fail

* Update screenshots

---------

Co-authored-by: bmarty <3940906+bmarty@users.noreply.github.com>
Co-authored-by: Jorge Martín <jorgem@element.io>
2025-04-14 11:24:28 +02:00
Benoit Marty a230b83e99 Remember flows (#4533)
* Add Konsist test to ensure that the result of a function returning a flow is remembered.

* Remember flows before they are collected by state.

* Fix compilation issue

* Make isOnline a val.

* Make selectedUsers() a val.

* Make flow() a val.

* Make getUserConsent(), didAskUserConsent() and getAnalyticsId() some val.

* Remove Timeline.paginationStatus() and replace by direct access to the underlined flow.

* Simplify test

* userConsentFlow must be initialized before because it's used in observeUserConsent

* Fix test compilation
2025-04-04 16:50:43 +02:00
Benoit Marty 3c1deff79c Element config (#4471)
* Add handy extension "VariantDimension.buildConfigFieldStr"

* Update configuration for MapTiler.

* Update configuration for Sentry.

* Build AnalyticsConfig depending on analytics configuration.

* Configure analytics policy url.

* Add handy extension "VariantDimension.buildConfigFieldBoolean"

* Configure legal urls.

* Add a way to disable rageshake / reporting bugs.

* Update screenshots

* Quality

* Fix test

* Use `ifBlank` extension

* Add missing configuration for PostHog

* Update configuration for Rageshake.

* Add build log.

* Disable crash detection if rageshake feature is not available.
Disabled twice.

* Hide link to analytics policy if the link is missing.

* Fix test when run in enterprise context.

* Use RageshakeFeatureAvailability where appropriate.

* Rename file.

* Move some classes to their correct module.

* Update screenshots

---------

Co-authored-by: ElementBot <android@element.io>
2025-03-27 11:25:04 +01:00
bmarty 9a75f40855 Sync Strings from Localazy 2025-03-10 00:28:38 +00:00
Benoit Marty b0cd9905ce Remove PreferenceText, replace by ListItem. 2025-03-05 17:25:35 +01:00
Benoit Marty a70249769d Migrate to coil3 2025-03-03 12:30:26 +01:00
bmarty 46acf414c1 Sync Strings from Localazy 2025-03-03 00:29:16 +00:00
ganfra 25d39c285b feat(join by alias) : add TextFieldValidity.None instead of nullable 2025-02-25 20:27:54 +01:00
ganfra 6f8ca62261 feat(join by alias) : format code 2025-02-25 15:56:14 +01:00
ganfra 786c2adc97 design(text field) : allow setting validity (instead of just isError bool) 2025-02-25 15:45:43 +01:00
bmarty f549e7bba2 Sync Strings from Localazy 2025-02-17 00:30:17 +00: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
bmarty be91da966a Sync Strings from Localazy 2025-02-03 00:29:01 +00:00
ganfra 599972adea change(tracing) : update bug reporter tracing form data. 2025-01-17 16:59:31 +01:00
ganfra 7d27e6581b change(tracing) : change how tracing is configured (ui and logic) 2025-01-17 09:52:32 +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
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
ganfra acc6eb736b design : adjust some designs after textfield changes 2024-11-08 16:28:09 +01:00
ganfra 3910c42855 design : TextField2 is now TextField 2024-11-08 15:37:10 +01:00
ganfra e378b20868 design : removes usage of OutlinedTextField 2024-11-08 15:15:08 +01:00
ganfra 7aa1a338e7 bugfix: do not remove logs after sending them 2024-10-31 11:42:14 +01:00
Benoit Marty e9e4963373 Remove dependencies to other presenters from DeveloperSettingsPresenter 2024-10-07 17:45:17 +02:00
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 1d5509e2eb Don't delete uploaded logs (#3540) 2024-10-01 13:31:34 +02: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 1768f24fd0 Sync Strings from Localazy 2024-09-23 00:23:49 +00:00
Benoit Marty 5de84f6ad8 Use aSessionData() from the test module.
And fix typo.
2024-09-18 17:16:06 +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 2ed6abb532 Fix test compilation issue. 2024-09-06 13:52:43 +02:00
Benoit Marty 5b13a51b0c Add an application migration to delete the old log files. 2024-09-06 09:31:14 +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
bmarty 5ad2764402 Sync Strings from Localazy 2024-09-02 00:15:17 +00:00
Benoit Marty c41cb33410 Provide distinct cache directory to the Rust SDK. 2024-08-30 18:36:20 +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
ElementBot 1f01bd73c4 Sync Strings (#3232)
Co-authored-by: bmarty <3940906+bmarty@users.noreply.github.com>
2024-07-22 08:59:47 +00:00
jmartinesp dabaa2d265 Sync Strings from Localazy 2024-07-03 11:21:27 +00: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 6c4e7ec85e Merge pull request #3025 from element-hq/feature/bma/elementEnterprise
Element enterprise (EE) foundations
2024-07-01 17:08:40 +02:00
bmarty 32c5da898b Sync Strings from Localazy 2024-07-01 00:22:10 +00:00
Benoit Marty 0e3821c9b2 Add 'Enterprise' label to rageshake 2024-06-26 11:59:47 +02:00
Jorge Martin Espinosa 40b7736fcf Use IO dispatcher for cleanup in bug reporter (#3092) 2024-06-25 09:26:18 +00:00