Commit Graph

58 Commits

Author SHA1 Message Date
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
Jorge Martin Espinosa ba626fc173 Use embedded version of Element Call (#4470)
* Use embedded version of Element Call: for in-app room calls, the app will use an embedded version of Element Call shipped with the app instead of using an external service.

* Remove `ElementCallBaseUrlProvider` so we don't use the Element well known file to get the base URL anymore

* Remove `ElementCallConfig.DEFAULT_BASE_URL` since it's not used anymore

* Restore the usage of the custom EC base URL in developer settings as the actual base URL, it present

* Add a way to customise the embedded EC analytic credentials

* Update CI to use the EC analytic credentials as secrets

* Improve the custom URL placeholder to include the `/room` suffix
2025-03-26 09:35:21 +01:00
Benoit Marty 0a5784992f Add a way to override default homeserver. 2025-02-20 18:05:49 +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
fkwp be24cdd1a0 increase ringing timeout from 15 seconds to 90 seconds 2024-12-04 10:04:38 +01:00
Benoit Marty ab6f4d5b0e Rename const for clarity and convention 2024-11-22 14:04:27 +01:00
Benoit Marty 6e936ff219 Enable all notification actions. 2024-11-21 14:53:40 +01:00
Benoit Marty fd819c2381 Add "Learn more" on identity verification first screen. 2024-10-10 17:09:35 +02:00
Benoit Marty 5baefd479f Identity change: handle click on "learn more" 2024-10-08 09:35:18 +02:00
Benoit Marty 2d08c648e2 Rename SecureBackupConfig to LearnMoreConfig 2024-10-07 22:29:43 +02:00
Benoit Marty d492259312 Enable account creation and iterate on the Button design 2024-09-16 12:12: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
ganfra 5d2abd0350 timeline : allow rendering m.room.pinned_events 2024-08-06 17:28:23 +02:00
Benoit Marty f73b480328 Doc: add missing period 2024-07-10 17:01:04 +02:00
Benoit Marty 2efa7fea96 Change PIN grace period to 2 minutes. 2024-07-10 16:25:20 +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
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
Jorge Martin Espinosa 32a374d836 FFs can now be toggled in release builds too (#3101)
- Removed `StaticFeatureFlagProvider`.
- Always provide `PreferencesFeatureFlagProvider`.
- For the default values of feature flags, use a lambda with a `BuildMeta` parameter so we can customize the return value based on its data.
2024-07-02 16:06:42 +00:00
Benoit Marty f6fe030d6a Merge pull request #3053 from element-hq/feature/bma/callSettings
Alert for incoming call even if notifications are disabled - WAITING FOR FINAL PRODUCT DECISION
2024-06-28 14:21:23 +02:00
Jorge Martin Espinosa 4904c4b751 Bump Rust SDK version and adapt our code (#3068)
* Use the new SDK version
* Adapt the authentication service to the new Rust SDK APIs
* Remove `Timeline.enterSpecialMode(...)` as it's no longer necessary
2024-06-27 09:44:14 +00:00
Benoit Marty 8a91ec7254 Change color use in notification to FF0DBD8B 2024-06-19 17:32:49 +02:00
Benoit Marty faa40dbb19 Move notification_accent_color from resource file to NotificationConfig 2024-06-19 16:48:00 +02:00
Benoit Marty 2fae4a52ad Add documentation back. 2024-06-13 18:20:19 +02:00
Benoit Marty ea679cc108 Move MAX_LOG_UPLOAD_SIZE to RageshakeConfig 2024-06-13 18:20:19 +02:00
Benoit Marty 816d60b6ce Move rageshake configuration from resource file to Kotlin RageshakeConfig 2024-06-13 18:20:19 +02:00
Jorge Martin Espinosa 30a1367714 Element Call ringing notifications (#2978)
- Add `ActiveCallManager` to handle incoming and ongoing calls.
- Add ringing call notifications with full screen intents and missed call ones as part of the 'conversation' notifications.

---------

Co-authored-by: ElementBot <benoitm+elementbot@element.io>
2024-06-10 11:51:19 +02:00
Jorge Martin Espinosa c8bd04ceb1 Sign in with QR code (#2793)
* Add QR code login.
* Add FF to disable it in release mode.
* Force portrait orientation on the login flow.
* Create `NumberedList` UI components.
* Improve camera permission dialog.
* Make nodes in qrcode feature use `QrCodeLoginScope` instead of `AppScope`
* Bump SDK version.
* Fix maestro tests

---------

Co-authored-by: Benoit Marty <benoit@matrix.org>
Co-authored-by: ElementBot <benoitm+elementbot@element.io>
2024-05-31 14:38:27 +02:00
Jorge Martin Espinosa 04e503177b Notifications: simplify the flow by removing persistence (#2924)
* Notifications: simplify the flow by removing persistence. 
* Bump of minSdk to `24` (Android 7).
* Add migration to remove `notification.bin` file
2024-05-29 08:03:23 +00:00
Jorge Martin Espinosa 880ebb4de8 Plain text editor implementation based on markdown input (#2840)
* Add plain text editor based on markdown input
- Fix autofocus of message composer.
- Remove `Message` data class, fetch the details in `MessagesPresenter` instead.
- Remove `enable rich text` option from advanced settings, set it as a build configuration instead.
* Fix MentionSpanProvider
* Bump RTE library to released `v2.37.3`

---------

Co-authored-by: ElementBot <benoitm+elementbot@element.io>
2024-05-21 13:58:53 +02:00
Jorge Martin Espinosa 2f19f57aa3 Make logs less verbose, especially for sliding sync (#2825)
* Make logs less verbose, especially for sliding sync.

Use the same config as iOS for most targets.

* Make sure we don't try to upload logs that are larger than the max request size of the bug reporter server.

* Display the loading state as soon as the bug reporter starts processing the log files

* Add changelog
2024-05-09 16:39:59 +02:00
ganfra 447a10cb06 Add ApplicationConfig object to help tweaking the application / brand name used across the application. 2024-04-10 16:57:18 +02:00
Benoit Marty 71b8a1df90 Exlude CallMember state event from the timeline (Fixes #2625) 2024-04-02 14:37:22 +02:00
Benoit Marty 2a248417fa Move Event exclusion to the module appconfig.
It has to become an android module to be able to add a dependency on : libraries:matrix:api.
2024-04-02 14:35:58 +02:00
Benoit Marty a831f05f6e Fix ktlint issues 2024-01-10 19:33:39 +01:00
Benoit Marty 99b38c8b0a Move doc to Kdoc and fix formatting issue. 2024-01-10 19:31:36 +01:00
Benoit Marty 8650ce8d53 Cleanup 2023-12-19 15:58:18 +01:00
Benoit Marty 03a00330a6 Add RoomListConfig to be able to hide menu items. And hide them #2062. 2023-12-19 15:10:22 +01:00
Benoit Marty 0c86b76357 Move NotificationConfig object to the config module. 2023-12-19 15:01:36 +01:00
Benoit Marty c8532a8dd6 Move Config object to the config module and rename to AnalyticsConfig 2023-12-19 14:58:29 +01:00
Benoit Marty 87d5ed82b9 Read receipt: model and UI. 2023-11-16 14:05:00 +01:00
Jorge Martin Espinosa f752147837 Remove Element Call feature flag and revert base URL to call.element.io (#1809)
Co-authored-by: ElementBot <benoitm+elementbot@element.io>
2023-11-15 13:02:24 +00:00
Benoit Marty 3628a0359c Create VoiceMessageConfig in appconfig module. 2023-11-14 10:31:25 +01:00
Benoit Marty f073e51a84 Move PushConfig to the appconfig module. 2023-11-14 10:26:16 +01:00
Benoit Marty 9402421929 Let lint analysis the module :appconfig.
We had this warning:
Lint will treat :appconfig as an external dependency and not analyze it.
 * Recommended Action: Apply the 'com.android.lint' plugin to java library project :appconfig. to enable lint to analyze those sources.
2023-11-06 16:03:03 +01:00
Benoit Marty e0a975835b Set lock grace period to 0 #1732 2023-11-03 09:47:37 +01:00
Benoit Marty 3c48ee23e9 Small cleanup 2023-11-03 09:47:01 +01:00
ganfra 6832b1f2db Feature/fga/biometric unlock (#1702)
* Biometric unlock : refactor a bit existing classes

* Biometric unlock : first implementation

* Biometric: add ui for biometric setup

* Biometric unlock : use localazy strings

* Biometric unlock setup : branch skip/allow events

* Biometric : fix tests

* Biometrics: add small test

* Biometric : clean up

* Update screenshots

* Biometric unlock : address some PR review

* Biometric : improve a bit edge cases

* Fix lint issues

---------

Co-authored-by: ganfra <francoisg@element.io>
Co-authored-by: ElementBot <benoitm+elementbot@element.io>
Co-authored-by: Jorge Martín <jorgem@element.io>
2023-10-31 19:22:43 +01:00
Benoit Marty 12efed3a94 Move SecureBackupConfig to the appconfig module. 2023-10-30 20:16:18 +01:00
Jorge Martin Espinosa e64f822f5a Enable Element Call integration in rooms by default (#1685)
Also change base url to `call.element.dev`.
2023-10-30 11:33:22 +00:00