Commit Graph

496 Commits

Author SHA1 Message Date
Richard van der Hoff 89fc77727f build-rust-sdk: allow skipping git update for kotlin components (#7012)
Updating matrix-rust-components-kotlin from git on every build is
time-consuming, and requires network connectivity. It's useful to be able to
skip it, particularly when working offline.

Add an option to the build script to skip this step.
2026-06-11 17:02:52 +02:00
Benoit Marty c88edc9621 Notification settings: pick custom sounds for messages and call ringtones (#6897)
* Notification settings: pick custom sounds for messages and call ringtones (#6702)

* Feature: add notification sound settings for messages and calls

* Add sound not available banner, accessibility checks

* Fix build and Konsist convention violations

- libraries:preferences:api now uses io.element.android-compose-library
  so NotificationSound's @Immutable annotation can resolve, matching the
  pattern in libraries:matrix:api.
- Rename SoundUnavailableBannerStateProvider to
  NotificationSoundUnavailableStateProvider so the class name contains
  the parameter type as required by KonsistClassNameTest.

* Suppress LargeClass on RoomListPresenterTest

The three new sound-unavailable tests pushed the class past Detekt's
default LargeClass threshold. Matches the suppression pattern already
used on five presenter test classes under features/messages/impl/test.

* NotificationSettingsView: guard ringtone-picker launchers in inspection mode

rememberLauncherForActivityResult requires a LocalActivityResultRegistryOwner,
which Paparazzi-driven preview snapshot tests don't provide, causing
NotificationSettingsViewPreview to throw IllegalStateException for every
preview parameter. Extract the click handlers into a helper that returns a
no-op when LocalInspectionMode.current is true; the runtime path is unchanged.

* Handle unresolved notification sounds mid session

* Quality checks, refactor mid session error ui

* Suppress detekt LargeClass on NotificationSettingsPresenterTest

* Remove notification sound resilience layer, replace with file copy

* Reselect element sound option, code cleanup

* Add element fade notification sound option

* Fix new file headers

* Revert to flowOf(Unit) for announcement service

* Add ringtone picker dialog to match message selector

* Update strings in conjunction with ios

* Update test to reflect new string

* Sync strings.

* Update screenshots

* Fix test

* Remove not properly located translations.
This will be fixed in the next String sync.

* Fix test on CI

---------

Co-authored-by: Jenna Vassar <jenna.vassar@toptal.com>
Co-authored-by: ElementBot <android@element.io>
2026-05-28 16:54:12 +02:00
Jorge Martín bf1462f9b1 WIP 2026-05-28 09:54:00 +02:00
Benoit Marty bb2779549e Update design and UX
Update and add tests
Improve preview
2026-05-22 10:29:36 +02:00
Benoit Marty 882d5577a7 Add "Mark as read", "Mark as unread" in room settings.
#6398
2026-05-19 18:06:11 +02:00
Benoit Marty 3ca06d71ef Rename keys on Localazy and add Black theme. 2026-05-12 17:57:55 +02:00
Benoit Marty f4b3ddfa0b Merge branch 'develop' into feature/bma/removeExternalCallSupport 2026-04-30 11:50:35 +02:00
Benoit Marty 5508442222 [Link new device] Implement code confirmation screen. 2026-04-28 12:04:57 +02:00
Benoit Marty 8860647477 Element Call: remove support for SPA call links.
Closes #6578
2026-04-27 17:01:08 +02:00
Valere 283fd2970a devx: fix build sdk script options for macos 2026-04-21 15:34:01 +02:00
Jorge Martin Espinosa a341a1a59e Replace rustls-platform-verifier-android.aar with single class (#6610)
* Replace the `rustls-platform-verifier-android.aar` with the actual source code

* Exclude the platform-verifier code from linters

* Add manual update instructions

* Exclude from Kover too
2026-04-17 14:48:50 +02:00
Benoit Marty 8c5caabed4 Sign in with Classic 2026-04-13 11:16:05 +02:00
Andy Balaam 350d8bc61f Fix a missing : in build-rust-sdk (#6522)
This prevented us providing a build target argument.
2026-04-03 11:41:57 +02:00
Benjamin Bouvier ef041baeb4 chore: update the build-rust-sdk script (#6476) 2026-03-27 07:36:48 +01:00
ganfra 1c5037f6e2 Add localazy config for location sharing 2026-03-24 11:13:40 +01:00
renovate[bot] 0c8a01d2cf fix(deps): update dependency org.matrix.rustcomponents:sdk-android to v26.03.19 (#6411)
* fix(deps): update dependency org.matrix.rustcomponents:sdk-android to v26.03.18

* Fix API breaks

* Add compatibility with rustls (#6367)

A new `rustls-platform-verifier-android` library has to be added to the project, it'll be called from Rust to get access to the certificates on Android.

Originally, this was supposed to be added as a local maven repo pointing to the rust crate that publishes the AAR, but that's just plain terrible (more details [here](https://github.com/rustls/rustls-platform-verifier#android).

Instead, what we can do is use a script that uses `cargo-download` to download the latest crate or a specified version, unzip it and add the `aar` file to the `:libraries:matrix:impl` module.

* Try fixing Sonar with local AAR files

* Remove `UserCertificatesProvider`: this is no longer needed after integrating rustls

* Added some docs for rustls and its `platform-verifier` library

* Upgrade SDK to `26.03.19`: this version contains a workaround that allows the app to use the same TLS verifier as before, fixing the Let's Encrypt issues we saw with some homeservers (like element.io)

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Jorge Martín <jorgem@element.io>
2026-03-20 16:20:37 +01:00
Benoit Marty faa97ff2f1 Update wording from "Enter recovery key" to "Use recovery key" 2026-03-16 17:19:49 +01:00
Benoit Marty 39bfd3a261 Fix deeplink_matrixto.sh content, it did not contain a matrix.to link. 2026-03-13 18:16:17 +01:00
Jorge Martin Espinosa 861f268447 Replace knit with generate_toc.py (#6279) 2026-03-10 09:05:20 +01:00
Jorge Martin Espinosa 326aacf353 Add use existing branch confirmation and progress for file download (#6294)
* Add `use existing branch for release` confirmation. Otherwise, this message might go unnoticed and we might build the wrong binaries

* Display the progress of downloaded artifacts so we can be sure the process is working
2026-03-06 14:45:47 +01:00
Andy Balaam a877e9f054 Adjust the build-rust-sdk script to allow non-interactive use 2026-03-04 15:35:43 +00:00
Benoit Marty b27ab2ef0c Import compound token v6.10.1
./tools/compound/import_tokens.sh -b v6.10.1
2026-03-02 12:40:33 +01:00
Benoit Marty 5566f10c43 Merge pull request #6152 from element-hq/feature/bma/releaseVersion
[Release script] Ensure that the release version will match the next Monday date
2026-02-09 18:31:34 +01:00
Skye Elliot 1e268b0709 Add history sharing badges to room details (#6132)
* feat: Add history sharing badges to room details view

* tests: Add snapshots for history sharing room details badges

* fix: Disable soft-wrapping in badges, use FlowRow

* tests: Add unit test for `RoomDetailsState` and history sharing badges.

* tests: Add `MatrixBadgeAtomNeutralWrappingPreview` to exceptions

* chore: Re-order `MatrixBadgeAtom` previews

* fix: Add `Immutable` annotation to `RoomHistoryVisibility`.

* fix: Correct translation for shared badge
2026-02-06 19:03:52 +00:00
Benoit Marty eff3aae948 Fix typo 2026-02-06 16:32:59 +01:00
Benoit Marty 7268aff90f [Release script] Ensure that the release version will match the next Monday date. 2026-02-06 14:38:18 +01:00
Benoit Marty e8b14e62cf Sync all strings and fix compilation issue. 2026-01-26 14:13:06 +01:00
ganfra e9a55ea79a Sync strings 2026-01-21 19:49:47 +01:00
ganfra 57b89d241f Add proper localization for space room removal UI 2026-01-15 12:14:08 +01:00
ganfra 7645588b0f localazy : sync strings
# Conflicts:
#	features/roomdetails/impl/src/main/res/values/localazy.xml
#	features/securityandprivacy/impl/src/main/res/values/localazy.xml
#	libraries/ui-strings/src/main/res/values/localazy.xml
2025-12-23 15:23:45 +01:00
Benoit Marty 3ea10c2c62 Merge pull request #5909 from element-hq/feature/bma/qrCodeLogin
Link new device using QrCode - First version
2025-12-18 16:08:21 +01:00
Benoit Marty 57a02d01fc Icon Backspace and BackspaceSolid must be auto-mirrored. 2025-12-17 12:03:04 +01:00
Benoit Marty a073117d62 Link new device using QrCode. 2025-12-16 16:14:04 +01:00
ganfra ce079e84f5 Merge branch 'develop' into feature/fga/space_settings_iteration 2025-12-15 16:06:06 +01:00
ganfra c4a542dbf1 localazy: download strings to match module 2025-12-10 15:14:35 +01:00
Benoit Marty 54e742075d Detekt: enable rule exceptions.SwallowedException and fix existing issue. 2025-12-05 09:45:23 +01:00
Benoit Marty d0df2cd088 Update detekt rules after updating compose.rules to version 0.5.1. 2025-12-05 09:33:21 +01:00
ganfra c08de1f904 change(room details edit): move to his own module 2025-12-03 14:30:05 +01:00
ganfra c6ba2f5d10 change(security and privacy) : extract code to a separate module 2025-11-26 12:32:06 +01:00
ElementBot eff221645e Sync Strings (#5792)
* Sync Strings from Localazy

* Update localazy config and sync strings.

* Use the new localazy key.

* Sync strings again

* Sync strings again and fix compilation issue.

* Update screenshots

---------

Co-authored-by: bmarty <3940906+bmarty@users.noreply.github.com>
Co-authored-by: Benoit Marty <benoit@matrix.org>
2025-11-24 17:28:49 +01:00
Jorge Martin Espinosa 95c9e768f4 Use regex to check forbidden terms. (#5784)
We were returning and `Elementul` as a match for the forbidden term `Element`. It now checks for the full word.
2025-11-21 17:01:01 +01:00
Benoit Marty a00a188cd9 Fix Javascript issue. 2025-11-17 18:05:29 +01:00
Benoit Marty 001e399d40 vector-im -> element-hq 2025-11-17 18:04:54 +01:00
Benoit Marty 017a259f1c Update notification content 2025-11-14 15:40:31 +01:00
Benoit Marty 57e9153a0e Copyright: Add missing headers 2025-11-10 11:05:31 +01:00
Benoit Marty eb31505dc7 Copyright: Add Element Creations Ltd. copyright 2025-11-10 11:05:05 +01:00
Benoit Marty f86431e663 Copyright: Add final period 2025-11-10 10:13:41 +01:00
Benoit Marty c4e0370f41 Copyright: run command uv run license-editor --repository ../element-x-android 2025-11-10 10:09:26 +01:00
Benoit Marty c99068c60e Update the template to use the singular form for Event interface. 2025-11-07 13:39:56 +01:00
Benoit Marty 2625c75ac9 Update the template. 2025-11-07 12:44:59 +01:00