Commit Graph

16191 Commits

Author SHA1 Message Date
Jorge Martín d2ca5629c8 Merge branch 'release/26.09.3' 2026-09-25 16:11:33 +02:00
Jorge Martín 6b62f0d78c Adding fastlane file for version 26.09.3 2026-09-25 16:11:32 +02:00
Jorge Martín bbb9750b3c Setting version for the release 26.09.3 2026-09-25 16:10:17 +02:00
Jorge Martin Espinosa 306e1cb950 Upgrade SDK bindings to v26.09.26 (#7780)
* Bump SDK bindings to `v26.09.26`

This version contains a fix for issues in `v26.09.25` related to certificate verification.

* Fix breaking API changes in the latest bindings

* Unify `FeatureFlags.RoomThreadList` with `FeatureFlags.Threads`
2026-09-25 16:08:19 +02:00
Benoit Marty 5c871c0fc2 Merge pull request #7750 from element-hq/bma/settingsIterationStep2Bis
Settings iteration: split account settings and application settings.
2026-09-25 10:25:06 +02:00
ElementBot 05373c2988 Update screenshots 2026-09-25 07:45:49 +00:00
Benoit Marty 7e5866a2b7 Merge branch 'develop' into bma/settingsIterationStep2Bis 2026-09-25 09:36:00 +02:00
gradle-update-robot ee87ef31b3 Update Gradle Wrapper from 9.7.1 to 9.8.0
Signed-off-by: gradle-update-robot <gradle-update-robot@regolo.cc>
2026-09-25 00:45:46 +00:00
Benoit Marty b643e7b8b6 Merge pull request #7762 from element-hq/bma/masDeleteAllSessions
Add a script to end all the sessions of a Matrix account using MAS
2026-09-24 21:54:57 +02:00
Jorge Martin Espinosa b80a24e0aa Fix unread notification count in room list (#7749)
* Display the unread notification count only when needed

* Adjust `CounterAtom` and `UnreadIndicatorAtom` to use the official M3's `Badge` component, with a few tweaks to ensure single digit items are always displayed as a circle

* +99 is now 99+

* Update screenshots

---------

Co-authored-by: ElementBot <android@element.io>
2026-09-24 18:01:12 +02:00
Benoit Marty 6cb4343081 Add a script to end all the sessions of a Matrix account using MAS
The script logs in to MAS with the web login form (username and password),
then uses the MAS GraphQL API to end all the active compat, OAuth 2.0 and
browser sessions of the account. MAS pagination of browser sessions does not
always progress, so sessions are fetched and ended in batches until none are
left.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-09-24 17:13:00 +02:00
Benoit Marty c3f5a1884f Update Maestro tests 2026-09-24 17:12:17 +02:00
Benoit Marty 70058e0581 Run ./tools/manifest/aaptDump.sh 2026-09-24 15:02:00 +02:00
Benoit Marty 30e518d0a5 Remove Haze, we are not using it now that we have the floating toolbar. 2026-09-24 10:51:12 +02:00
Benoit Marty e5c078c01a Merge pull request #7756 from element-hq/renovate/media3
Update media3 to v1.11.1
2026-09-24 10:10:32 +02:00
Benoit Marty 72d828f2ec Merge pull request #7757 from element-hq/feature/bma/removeMessageUpdate
Update remove message confirmation dialog.
2026-09-24 09:54:33 +02:00
ElementBot 478138730c Update screenshots 2026-09-23 14:47:35 +00:00
Benoit Marty 01681e9fff Move the "Blocked users" item to the Moderation and safety screen.
The item is removed from the account section of the root settings screen and
added at the bottom of the Moderation and safety screen. As before, it is only
shown when at least one user is blocked, with the number of blocked users.

ModerationAndSafetyPresenter now computes the number of blocked users, and
ModerationAndSafetyNode exposes a Callback to navigate to the blocked users
screen. Tests are moved accordingly.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-09-23 16:17:26 +02:00
Benoit Marty c612c80b1d Merge account settings into the root preference view. 2026-09-23 16:03:15 +02:00
ElementBot cc70885552 Update screenshots 2026-09-23 12:43:52 +00:00
Jorge Martin Espinosa b6cf293e2a Add headers (h1-h6) tag support for the new timeline renderer (#7754)
* Add headers (`h1-h6`) tag support for the new timeline renderer

* Make H1 and H2 use the same (smaller) style

* Update screenshots

---------

Co-authored-by: ElementBot <android@element.io>
2026-09-23 12:35:05 +00:00
Benoit Marty 3cafaaec94 Update remove message confirmation dialog.
Closes #7753
2026-09-23 14:25:37 +02:00
renovate[bot] fb84c5b3c0 Update dependencyAnalysis to v3.19.2 (#7755)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-09-23 13:02:58 +02:00
Jorge Martin Espinosa 4fa98752d4 Add a script to install and launch an APK given a PR URL (#7752)
* Add a script to install and launch an APK given a PR URL

This is easier than manually downloading, then installing the APK or scanning the QR code using the device

* Allow fetching the APK using the PR number too
2026-09-23 10:42:57 +00:00
Benoit Marty 60000bfa58 Merge pull request #7692 from element-hq/bma/fix7689
Fix blank screen at launch when the homeserver expires the sliding sync session
2026-09-23 12:32:00 +02:00
renovate[bot] 2ab3c7ec53 Update media3 to v1.11.1 2026-09-23 10:28:33 +00:00
Benoit Marty f5ed93b474 Merge pull request #7729 from element-hq/renovate/androidx.sqlite-sqlite-ktx-2.x
Update dependency androidx.sqlite:sqlite-ktx to v2.7.1
2026-09-23 12:25:23 +02:00
Benoit Marty 6642383d03 Merge pull request #7730 from element-hq/renovate/compose.bom
Update dependency androidx.compose:compose-bom to v2026.09.00
2026-09-23 12:22:55 +02:00
Benoit Marty 2669ac4eae Change to "produceState" 2026-09-23 11:55:03 +02:00
Benoit Marty c8748f4d77 nbOfBlockedUsers -> numberOfBlockedUsers 2026-09-23 11:51:54 +02:00
Benoit Marty e0defcea66 Fix Maestro tests. Disable searchRoomList.yaml as it's always failing here. 2026-09-23 10:15:40 +02:00
Jorge Martin Espinosa 8b1b5560d9 Add recent search results to global search (#7742)
* Add global search results history: keep the latest 25 items used in the global search, save them to an encrypted file store.

* Integrate the search history in the global search feature

* Add `MatrixClient.getRoomInfo` and use it in `GlobalSearchPresenter`

---------

Co-authored-by: ElementBot <android@element.io>
2026-09-22 15:17:57 +00:00
Benoit Marty ac54596ca3 Update Maestro tests 2026-09-22 16:43:58 +02:00
Jorge Martin Espinosa 51fe66cd88 Add linkification to the new timeline renderer (#7731)
* Add linkification to the new timeline renderer

Reuse `AnnotatedString.linkify` for now, even though it creates `Spannable` instances for that: it's the closest one to what we already had.

Also, make sure we use the same URL annotation identifier in the renderer and the linkificator.

* Update screenshots

---------

Co-authored-by: ElementBot <android@element.io>
2026-09-22 15:29:20 +02:00
Benoit Marty e688b174fa Merge branch 'develop' into bma/settingsIterationStep2Bis 2026-09-22 14:47:40 +02:00
Benoit Marty 9b3d4c7c27 Merge pull request #7736 from element-hq/sync-localazy
Sync Strings
2026-09-22 14:45:58 +02:00
Benoit Marty d29368cdf1 Add missing ElementPreview wrapper 2026-09-22 14:12:03 +02:00
ElementBot 80644b860e Update screenshots 2026-09-22 11:52:36 +00:00
Benoit Marty 872bf5a70f Let Claude update the tests. 2026-09-22 13:17:35 +02:00
Benoit Marty 9b2577f1dd Split settings: app settings / account settings 2026-09-22 13:17:16 +02:00
Jorge Martin Espinosa bec3780c9c Fix forwarding an event not working in threads (#7743)
* Fix forwarding an event not working in threads

Add the `TimelineProvider` for the event to the navigation flow so the events can be fetched from the right timeline.
2026-09-22 10:59:12 +02:00
Jorge Martin Espinosa 4e47c6170e Integrate the new timeline renderer behind a feature flag (#7722)
* Integrate the new renderer with the timeline UI

* Composable functions are now in `:libraries:htmlrenderer:api` so we don't need to add `impl` to other modules.

* Improve inline code span

* Return both the text and URL in `onLinkClick` and `onLinkLongClick` so we can check the URL is not misleading

* Remove `SelectionContainer` for now - it creates issues when long pressing

* Make `LocalComposeTimelineEventRenderer` contain a `ComposeLocalTimelineEventRendererData` instance. This checks if the new rendering is enabled and what is the current user id so it can be used for styling mention pills

* Add fading edges to code block to indicate scrolling is possible

* Long pressing in a code block copies its contents to the clipboard

* Fix alignment of ordered list item prefixes

* Don't use default values in State data classes

---------

Co-authored-by: ElementBot <android@element.io>
2026-09-22 10:26:35 +02:00
ganfra 789e02fe0b Update MapBottomSheetScaffold KDoc 2026-09-21 16:18:25 +02:00
ElementBot 3e7253cdb7 Update screenshots 2026-09-21 14:09:39 +00:00
Benoit Marty 0ea76ecebf Merge pull request #7741 from element-hq/bma/settingsIterationStep1
Settings iteration: move user status and update multi-account section
2026-09-21 15:54:11 +02:00
ElementBot d74263a7a1 Update screenshots 2026-09-21 13:12:36 +00:00
ElementBot dceb57c9fc Update screenshots 2026-09-21 12:37:28 +00:00
Jorge Martin Espinosa 84a907d906 Fix regex for invalid placeholders (#7738)
This issue added some false positives to the list and broke the string synchronization.
2026-09-21 14:35:33 +02:00
Jorge Martin Espinosa 3c3e8f8f6f Start sync manually after completing the auth flow (#7734)
Do it before we wait for the known verification state so we can receive updates from the encryption sliding sync flow.
2026-09-21 14:34:34 +02:00
Benoit Marty da2b2e99d6 Fix chevron rotation issue. 2026-09-21 14:19:54 +02:00