Commit Graph

16077 Commits

Author SHA1 Message Date
Jorge Martin Espinosa ed80c5c537 Remove Firebase push integration from Posthog (#7810)
This causes issues with F-Droid, since now Posthog unconditionally references some Firebase classes, which are detected by their checks.

Note these don't do anything if Firebase messaging isn't included, which is already the case for the F-droid variant of the app.

The R8 changes should remove any code referencing Firebase in Posthog, making the offending classes unused and removing them from the final APKs.

This is not the ideal fix, that would be Posthog actually extracting these classes to an optional dependency, but it's a workaround to be able to publish F-droid versions.
2026-09-29 18:35:36 +02:00
Jorge Martín 6c9d501009 Merge branch 'hotfix/26.09.4' into develop 2026-09-29 18:31:14 +02:00
Benoit Marty fc63d95b65 Merge pull request #7717 from element-hq/renovate/zizmorcore-zizmor-action-0.x
Update zizmorcore/zizmor-action action to v0.6.4
2026-09-29 17:42:12 +02:00
Jorge Martín 5b84bd4340 Adding fastlane file for version 26.09.4 2026-09-29 16:37:05 +02:00
Jorge Martín 7cbd60448d Setting version for the release 26.09.4 2026-09-29 16:36:06 +02:00
Jorge Martín a30730462b Revert "Fix unread notification count in room list (#7749)"
This reverts commit b80a24e0aa.
2026-09-29 16:31:01 +02:00
Benoit Marty 3fc5a56189 Merge pull request #7809 from element-hq/bma/upgradePaparazzi
Update paparazzi version to 2.0.0-alpha05.1
2026-09-29 14:25:34 +02:00
ElementBot 9eac3c8c2a Update screenshots 2026-09-29 09:15:08 +00:00
Benoit Marty d7e8111e6d Merge branch 'develop' into bma/upgradePaparazzi 2026-09-29 10:55:34 +02:00
ganfra 8dc052cc50 Merge pull request #7718 from element-hq/renovate/maplibre.compose
Update maplibre.compose to v0.16.0
2026-09-29 10:50:24 +02:00
ganfra 64aafc09ef Merge branch 'develop' into renovate/maplibre.compose 2026-09-29 10:13:48 +02:00
ElementBot 14ed697596 Update screenshots 2026-09-29 08:03:25 +00:00
Benoit Marty 8b8204167e Update paparazzi version to 2.0.0-alpha05.1 2026-09-29 09:50:07 +02:00
ElementBot 850048c182 Update screenshots 2026-09-28 16:01:44 +00:00
ganfra 397c19ecfa Merge branch 'develop' into renovate/maplibre.compose 2026-09-28 17:42:16 +02:00
Jorge Martin Espinosa 03fd288c47 Upgrade to rustls-platform-verifier:0.2.0 (#7791)
* Upgrade to `rustls-platform-verifier:0.2.0`.

This re-enables certificate revocation checks, but v0.2.0 contains a list of CRL servers that can be accessed using clear text requests to check the validity of certain certificates, which should fix the issue that prevented us from using certificate revocation and at the same time strengthening the security of the client app.

Since we already had some network configuration in Element X, and `network_security_config.xml` files can't be merged, what we can do is manually download and merge the XML contents using `tools/dependencies/update_rustls_platform_verifier.py` like this:

```sh
./update_rustls_platform_verifier.py 0.2.0
```

It will automatically bump the Gradle dependency and merge the security config entries.

* Bump SDK bindings to `v26.09.28`, containing the rustls bump on the SDK side

* Fix unused resources caused by `app/src/main/res/xml/network_security_config_element.xml`
2026-09-28 15:35:33 +00:00
Jorge Martin Espinosa 0f98c5c0e0 Migrate SqliteStoreBuilder.passphrase usage to use highEntropyPassphrase (#7802)
* Migrate `SqliteStoreBuilder.passphrase` usage to use `highEntropyPassphrase`

This is the first step in migrating existing sessions from using a passphrase that needs key derivation, slowing down opening SDK DBs to just a raw key using the already random keys of the 'passphrase'

* Remove no longer necessary `keyOfSize` extension function
2026-09-28 17:32:42 +02:00
ganfra 8c7e76cc19 Merge pull request #7792 from element-hq/renovate/codecov-codecov-action-7.x
Update codecov/codecov-action action to v7.1.1
2026-09-28 15:50:41 +02:00
Jorge Martin Espinosa 0adc09db1e Tweak renovate config again to avoid rate-limits in Maven Central (#7794)
Reduce the max concurrent requests and max requests per second to 5. We bumped it to 10 before because it seemed to work well, but we're seeing rate-limit issues again.
2026-09-28 15:33:36 +02:00
Benoit Marty 8ad38ff27e Merge pull request #7763 from element-hq/gradlew-update-9.8.0
Update Gradle Wrapper from 9.7.1 to 9.8.0
2026-09-28 15:27:52 +02:00
Benoit Marty 1acc49d8de Merge pull request #7790 from element-hq/renovate/metro
Update metro to v1.4.4
2026-09-28 15:08:54 +02:00
Benoit Marty 74b9c85c7c Merge pull request #7760 from element-hq/feature/bma/removeHaze
Remove Haze.
2026-09-28 15:07:15 +02:00
Benoit Marty 00bfb97b92 Merge pull request #7784 from yncyrydybyl/fix/link-new-device-navigation
Fix "Link new device" opening the "Add an account" screen
2026-09-28 14:59:52 +02:00
Benoit Marty 6d717ff745 Merge pull request #7793 from element-hq/feature/bma/storeUserAvatar
Display the avatar of other accounts even if it cannot be loaded from the current account
2026-09-28 12:43:03 +02:00
Benoit Marty c2a2e16f46 Use the stored avatar thumbnail as a fallback for other accounts
Add an optional thumbnail to `MatrixUser` and `AvatarData`, filled from the session
database for the other accounts in the room list header, the settings and the account
selection screen. `ImageAvatar` renders this thumbnail instead of the initial letter while
the avatar is loading or when it fails to load, for instance when the homeserver of the
current account is not federated with the one of the other account.

Fixes #5571

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-09-28 11:38:45 +02:00
renovate[bot] 00b40815d6 Update codecov/codecov-action action to v7.1.1 2026-09-28 09:35:19 +00:00
ElementBot c8c242476b Sync Strings (#7787)
* Sync Strings from Localazy

* Update screenshots

---------

Co-authored-by: bmarty <3940906+bmarty@users.noreply.github.com>
2026-09-28 11:32:40 +02:00
Benoit Marty db23023eda Store the user avatar thumbnail in the session database
Add a `userAvatarData` column to the session database, containing the base64 encoded
thumbnail of the user avatar. It will allow rendering the avatar of an account without
having to use its Matrix client, for instance on the signed out screen, or for other
accounts when the homeservers are not federated.

The thumbnail is downloaded when the user profile is retrieved or updated, and only if
the avatar URL has changed. The profile is now also persisted when received from the
own profile subscription.

Part of #5571

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-09-28 11:12:47 +02:00
renovate[bot] 35d8d1197f Update coil to v3.6.3 (#7789)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-09-28 07:54:31 +00:00
renovate[bot] 80591449ab Update zizmorcore/zizmor-action action to v0.6.4 2026-09-28 07:30:15 +00:00
renovate[bot] 72644428ed Update metro to v1.4.4 2026-09-28 07:30:01 +00:00
Yan Minagawa 83a01eb880 Send "Link new device" to the link-new-device flow again
PreferencesFlowNode routed navigateToLinkNewDevice() to
callback.navigateToAddAccount(), so tapping "Link new device" under
Account settings opened the "Add an account" screen instead — the
opposite direction, signing an extra account into this device rather
than authorising a new one.

The correct destination was already implemented and simply unreachable:
LoggedInFlowNode handles navigateToLinkNewDevice() by pushing
NavTarget.LinkNewDevice. Call that instead.

Regression from 9b2577f1dd ("Split settings: app settings / account
settings"); the previous code called callback.navigateToLinkNewDevice().
It went unnoticed because FeatureFlags.QrCodeLogin defaults to false,
which hides the entry point on default builds.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_017y1etzTCPzowrNcPyRBdjm
2026-09-26 16:48:46 +02:00
Jorge Martin Espinosa 4bf2a094c7 Fix some issues in the new timeline renderer (#7751)
* Don't show fading edge if the code block can't scroll. Use `canScrollForward || canScrollBackwards` for displaying the fading edges in the code blocks

* Don't add extra vertical padding to the mention pills. This should make them look like they did in the previous renderer

* Allow passing through touch events in `Modifier.linkTapHandler` if no url annotation is clicked or long clicked

`detectTapGestures` always consumes the touch events, no matter if they are handled or not, blocking these events from reaching parent components. Should fix the issue of `ParagraphView` blocking the long press action in the message bubbles

* Update screenshots

---------

Co-authored-by: ElementBot <android@element.io>
2026-09-26 13:02:56 +02:00
Benoit Marty a42d91a050 Merge pull request #7697 from bxdxnn/misc/keystore
Allow changing keystore path
2026-09-25 16:45:46 +02:00
Jorge Martín fdb9951e12 Changelog for version 26.09.3 2026-09-25 16:38:53 +02:00
Jorge Martín c2c94547e8 Merge tag 'v26.09.3' into develop 2026-09-25 16:11:34 +02:00
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