Commit Graph

13514 Commits

Author SHA1 Message Date
renovate[bot]
8baa8b1c9d Update dependency com.posthog:posthog-android to v3.34.0 (#6251)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-02-25 18:45:08 +01:00
renovate[bot]
89a6f5a7bf Update metro to v0.11.0 (#6245)
* Update metro to v0.11.0

* Fix `@AssistedInject` usages

Now the injected variables in the factories must match the names in the constructors

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Jorge Martín <jorgem@element.io>
2026-02-25 16:19:47 +01:00
Jorge Martin Espinosa
fe4554703c Check if network access if blocked when fetching notifications (#6247)
* Add `NetworkMonitor.isNetworkBlocked()`, use it to check if Doze prevented us from loading notifications

* Only check if network is blocked after checking if we have a network available, otherwise it's always `true`

* Extract `NetworkBlockedChecker` to handle deprecations more carefully
2026-02-25 12:04:07 +00:00
Jorge Martin Espinosa
dc11430a73 Add some DB optimizations (#6249)
* Set a maximum journal size limit (WAL file size) of 25MB

The previous value was null, which meant unlimited growth. This can affect performance, since the WAL file performance as a cache will worsen the larger it is

* When scheduling the vacuum task, make sure the user has enough free disk storage, since vacuuming can duplicate the DB sizes in disk
2026-02-25 11:59:21 +00:00
Jorge Martín
5f29446f75 Changelog for version 26.03.0 2026-02-24 18:14:24 +01:00
Jorge Martín
e9d16383da Merge tag 'v26.03.0' into develop
v26.03.0
2026-02-24 17:06:29 +01:00
Jorge Martín
c2cb32abd4 Merge branch 'release/26.03.0' 2026-02-24 17:06:22 +01:00
Jorge Martín
19879d0d28 Adding fastlane file for version 26.03.0 2026-02-24 17:04:34 +01:00
Jorge Martín
1c7b4445ee Setting version for the release 26.03.0 2026-02-24 17:04:32 +01:00
renovate[bot]
b0ab8878cd Update dependency org.matrix.rustcomponents:sdk-android to v26.03.0 (#6242)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-02-24 16:05:21 +01:00
Benoit Marty
a586ed505a Merge pull request #6238 from element-hq/feature/bma/importFromClassic
Ensure that Element X can use the service from Element Classic.
2026-02-24 15:58:16 +01:00
Jorge Martin Espinosa
2f80b101c5 Add extra analytics for notification performance (#6237)
* Add extra analytics for notification performance

Add technical spans to track how long a notification fetching work request takes to run, then how long it takes to actually fetch the events for the notifications

* Remove `withContext(io)` for `FetchNotificationsWorker`

The default `Dispatchers.Default` dispatcher used should be good enough and more performant

* Add network check span
2026-02-24 13:39:32 +01:00
Jorge Martin Espinosa
28c1c078a0 Catch exceptions when setting or clearing an audio communication device in Element Call (#6226) 2026-02-24 13:38:53 +01:00
ganfra
e528df274c Merge pull request #6218 from element-hq/renovate/kotlin
Update kotlin to v2.3.6
2026-02-24 13:37:26 +01:00
Jorge Martin Espinosa
7ed111d0df Remove runBlocking call to restore sessions when the app starts (#6193)
* Remove `runBlocking` call to restore sessions when the app starts

Sadly, to do this we need to manually handle restoring the state from Appyx using internal values. At least it doesn't seem like they're going to change any time soon (or ever).

This should take care of a few ANRs, although it may make loading the initial state a bit slower

* Add `ReplaceAllOperation` for state restoration

* Add warning comment for Appyx dependency
2026-02-24 09:51:43 +00:00
renovate[bot]
16b6ca1a28 Update dependency io.github.zxing-cpp:android to v3 (#6170)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-02-23 18:17:06 +01:00
Benoit Marty
110d0efd86 Fix release build. 2026-02-23 18:13:55 +01:00
Benoit Marty
e951d188fb Improve element gallery header (#6239)
* Improve header of Element Gallery.

* Add click to copy url to screenshot header and each screenshot row.
2026-02-23 17:58:47 +01:00
Benoit Marty
b9ffe541a0 Fix tests. 2026-02-23 17:32:53 +01:00
Jorge Martin Espinosa
496595f20d Disable the cross-process lock in the SDK (#6231)
* Disable the cross-process lock in the SDK

We don't use multiple process as iOS does, so we don't need it. It should improve DB performance a bit and overall waste less resources.
2026-02-23 15:31:59 +00:00
renovate[bot]
b8ce06d80f Update dependency com.posthog:posthog-android to v3.32.2 (#6230)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-02-23 13:38:13 +01:00
renovate[bot]
d66ae7657a Merge pull request #6214 from element-hq/renovate/org.unifiedpush.android-connector-3.x
Update dependency org.unifiedpush.android:connector to v3.3.1
2026-02-23 13:37:34 +01:00
Benoit Marty
783585bd01 Merge pull request #6194 from vmfunc/feature/audio-focus-voice-recording
request audio focus when recording voice messages
2026-02-23 13:35:57 +01:00
Benoit Marty
5959345aad Merge pull request #6207 from element-hq/sync-localazy
Sync Strings
2026-02-23 13:32:14 +01:00
Benoit Marty
42b17d5704 Ensure that Element X can use the service from Element Classic.
Permission "im.vector.app.READ_DATA" is not necessary anymore.
2026-02-23 12:43:42 +01:00
bmarty
6c81e88689 Sync Strings from Localazy 2026-02-23 00:39:49 +00:00
renovate[bot]
1ce57d811e Update dependency org.matrix.rustcomponents:sdk-android to v26.02.19 (#6229)
* Update dependency org.matrix.rustcomponents:sdk-android to v26.02.19

* Fix breaking API changes: added `isLowPriority` to `RoomInfo` and `RoomSummary`.

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Jorge Martín <jorgem@element.io>
2026-02-20 09:01:07 +01:00
renovate[bot]
5421dade55 Update dependency io.sentry:sentry-android to v8.33.0 (#6223)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-02-19 08:59:11 +01:00
Jorge Martin Espinosa
3a856394f2 Add free disk space action to CI actions (#6212)
* Add free disk space action

* Remove 'upload APK for Maestro' step since it's no longer used

* Re-enable tool-cache removal

* Add the free disk space step to other gradle-related jobs

* Use commit SHA

* Disable removing `large-packages`
2026-02-18 22:55:50 +01:00
Jorge Martin Espinosa
7d412d9461 Remove all video metadata (#6224)
Use `InAppMp4Muxer` with a custom metadata provider that removes all metadata entries
2026-02-18 16:51:44 +00:00
ganfra
73bfbccac7 Merge pull request #6210 from element-hq/renovate/com.posthog-posthog-android-3.x
Update dependency com.posthog:posthog-android to v3.32.0
2026-02-18 16:41:30 +01:00
renovate[bot]
d2c039d8e8 Update kotlin to v2.3.6 2026-02-18 07:36:33 +00:00
Jorge Martin Espinosa
ba75927d72 Limit the max number of opened rooms in the backstack (#6215)
* Limit the max number of opened rooms in the backstack

This should help with the `TransactionTooLargeExceptions` we were seeing, since every one of these nodes and their sub-nodes would be saved to the instance state.

Also, make sure we use `LoggedInFlowNode.attachRoom` as much as possible to ensure this check is used
2026-02-18 08:34:25 +01:00
ganfra
2b85a8d18c Merge pull request #6216 from element-hq/feature/remove_slide_animation_home
Use fade animation when replacing Placeholder
2026-02-17 14:17:38 +01:00
ganfra
c17c1bf052 Use fade animation when replacing Placeholder 2026-02-17 12:23:35 +01:00
renovate[bot]
bc295b3c97 Update dependency org.matrix.rustcomponents:sdk-android to v26.2.16 (#6211)
* Update dependency org.matrix.rustcomponents:sdk-android to v26.2.16

* Fix log rotation breaking changes. The new values match iOS (https://github.com/element-hq/element-x-ios/pull/5108/)

* Fix `aRustRoomInfo()` test fixture

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Jorge Martín <jorgem@element.io>
2026-02-17 10:42:31 +01:00
renovate[bot]
4cc1ab1b88 Update dependency com.posthog:posthog-android to v3.32.0 2026-02-16 16:31:26 +00:00
Jorge Martin Espinosa
1b73a15953 Try to fix common issue with the top app bar (#6187)
The exception is:

> Size(720 x -83) is out of range. Each dimension must be between 0 and 16777215.

So forcing the height to at least 0 should fix it (although it might cause UI glitches?)
2026-02-16 09:42:41 +01:00
renovate[bot]
15b8ca63f0 Update metro to v0.10.4 (#6202)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-02-16 09:30:42 +01:00
Benoit Marty
82245d5847 Merge pull request #6177 from element-hq/feature/bma/notificationCustomSound
Let enterprise build be able to use a different notification channel for noisy notification.
2026-02-13 17:32:19 +01:00
Benoit Marty
5729e834b6 Update ref. 2026-02-13 17:09:14 +01:00
Benoit Marty
d2ca80e7e8 Fix compilation issue after merging develop. 2026-02-13 16:44:42 +01:00
Benoit Marty
c1f3233dce Merge branch 'develop' into feature/bma/notificationCustomSound 2026-02-13 15:48:19 +01:00
Jorge Martin Espinosa
0f170b671b Remove explicit dependency androix.compose.material (#6199)
* Remove explicit dependency for `androix.compose.material` for compose library modules

* Ensure `Button` uses the `material3.Icon` instead of the `material.Icon`

* Remove entry in `libs.versions.toml`
2026-02-13 15:19:31 +01:00
vmfunc
73a3468dbc set willPausedWhenDucked to true for RecordVoiceMessage
per review feedback - need true here so the onFocusLost callback
actually fires on all Android versions

Signed-off-by: vmfunc <celeste@linux.com>
2026-02-12 19:50:11 +01:00
Benoit Marty
f9210a3506 Merge pull request #6190 from element-hq/feature/bma/fallbackNotificationCleanup
Fallback notification cleanup
2026-02-12 19:00:39 +01:00
Benoit Marty
8dfedd70d1 Merge pull request #6195 from element-hq/feature/bma/callButtonColor
Fix call button color and ensure call can always be declined from the notification
2026-02-12 19:00:04 +01:00
vmfunc
bddc5a63f4 finish recording gracefully when audio focus is lost
if something else grabs focus mid-recording (phone call, etc), stop
the recording and keep the partial result in preview state instead
of silently recording garbage

Signed-off-by: vmfunc <celeste@linux.com>
2026-02-12 18:39:40 +01:00
vmfunc
7bd157f032 add RecordVoiceMessage audio focus requester for recording
separates recording from playback focus - willPausedWhenDucked is false
for recording so notification sounds don't interrupt mid-recording

Signed-off-by: vmfunc <celeste@linux.com>
2026-02-12 18:39:39 +01:00
Benoit Marty
5aae5607f6 Fix test and add a new one. 2026-02-12 18:22:05 +01:00