Commit graph

12283 commits

Author SHA1 Message Date
Jorge Martín
7421e6545c Pass around fromPinnedEvents so we can use it to decide whether to forward the event from the main timeline or the pinned events one 2025-11-03 14:43:57 +01:00
Jorge Martín
d373cbe8a7 Create PinnedEventsTimelineProvider, expose it in TimelineBindings 2025-11-03 14:43:18 +01:00
Jorge Martín
569f9a3735 Changelog for version 25.11.0 2025-11-03 13:11:16 +01:00
Jorge Martín
76dbf603e8 Merge branch 'hotfix/25.11.0' into develop 2025-11-03 12:30:50 +01:00
Jorge Martín
2fb3f84d2a Setting version for the release 25.11.0 2025-11-03 12:29:08 +01:00
Jorge Martin Espinosa
444ae96030 Revert "Make sure declining a call stops observing the ringing call state (#5…" (#5615)
This reverts commit 10bf5f1c8c.
2025-11-03 12:13:48 +01:00
ElementBot
287a017739 Sync Strings from Localazy (#5662)
Co-authored-by: bmarty <3940906+bmarty@users.noreply.github.com>
2025-11-03 10:58:12 +01:00
renovate[bot]
2f5d0c340c fix(deps): update dependency org.matrix.rustcomponents:sdk-android to v25.10.31 (#5657)
* fix(deps): update dependency org.matrix.rustcomponents:sdk-android to v25.10.31

* Fix API breaks

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Jorge Martín <jorgem@element.io>
2025-11-03 10:48:06 +01:00
renovate[bot]
19dcdc1a0c fix(deps): update metro to v0.7.3 (#5663)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-11-03 10:24:54 +01:00
renovate[bot]
069adf45cc fix(deps): update firebaseappdistribution to v5.2.0 (#5640)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-11-03 09:30:28 +01:00
renovate[bot]
f5918c7bae fix(deps): update dependency com.google.firebase:firebase-bom to v34.5.0 (#5643)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-11-03 09:30:04 +01:00
Jorge Martin Espinosa
04f70c8130 Enable SyncNotificationsWithWorkManager by default in release mode apps too (#5646) 2025-10-31 16:25:36 +01:00
renovate[bot]
f7e28346d6 chore(deps): update danger/danger-js action to v13.0.5 (#5652)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-10-31 13:18:26 +00:00
Benoit Marty
f88c2b7d69 Merge pull request #5641 from element-hq/feature/bma/callbackRenaming
Improve architecture around Nodes
2025-10-31 13:42:39 +01:00
Benoit Marty
e70d767183 Remove context(parentNode: Node) and provide the parent Node as a parameter. 2025-10-31 12:04:57 +01:00
ganfra
b83ca02f23 Merge pull request #5644 from element-hq/renovate/okhttp-monorepo
fix(deps): update dependency com.squareup.okhttp3:okhttp-bom to v5.3.0
2025-10-31 10:31:12 +01:00
renovate[bot]
aaf6f8535b fix(deps): update dependency com.squareup.okhttp3:okhttp-bom to v5.3.0 2025-10-31 08:47:43 +00:00
renovate[bot]
4dc33d6c11 fix(deps): update dependencyanalysis to v3.4.1 (#5642)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-10-31 09:45:43 +01:00
Benoit Marty
45400d70d2 Fix typo in package name. 2025-10-30 18:47:20 +01:00
Benoit Marty
187479849d Create Fake classes in test modules 2025-10-30 18:32:31 +01:00
Benoit Marty
0303ac502a More renaming 2025-10-30 16:32:54 +01:00
Benoit Marty
05c5f3c914 Use context parameter for the parentNode 2025-10-30 16:32:53 +01:00
Benoit Marty
566515ca88 Remove NodeBuilder to ensure that Params and Callback are always provided. 2025-10-30 16:32:52 +01:00
Benoit Marty
5197154f54 Ensure a Callback and only one is provided in the Plugin. Also reduce boilerplate code in Nodes. 2025-10-30 16:32:51 +01:00
Benoit Marty
596b7f00fc More renaming 2025-10-30 16:32:50 +01:00
Benoit Marty
09a18ad7ca Rename fun in Callback for clarity. 2025-10-30 16:32:48 +01:00
Jorge Martin Espinosa
45b5783b23 Display only valid emojis in recent emoji list (#5612)
* Create `:libraries:recentemojis` and move `AddRecentEmoji` and `GetRecentEmojis` there

- Make sure `GetRecentEmojis` won't return duplicate or invalid emojis.
- `ActionListPresenter` now handles merging suggested and recent emojis, not `ActionListView`.
2025-10-30 15:27:51 +00:00
Jorge Martin Espinosa
7facc40771 Split notifications for messages in threads (#5595)
* Separate thread notifications into their own notifications when the feature flag is enabled.

Otherwise, set the `threadId` to null so it'll behave as usual. It's done this way to avoid having to inject `FeatureFlagService` in several places.

* Add permalink navigation to threads from notifications, focusing on the latest event in the list of messages of the notification tapped

* Fix redactions in threads

* Clear notifications for a thread when visiting it

* Fix opening a thread happening twice, first because of the `openThreadId` value, then because of the `focusedEventId` one

* Make opening a room through a notification also focus on the latest event

* Add helper `NotificationCreator.messageTag` function

* Remove unused `ROOM_CALL_NOTIFICATION_ID`: `FOREGROUND_SERVICE_NOTIFICATION_ID`+ `ForegroundServiceType` is used instead

* Simplify `DefaultDeepLinkCreator`

* Make sure the main timeline focuses on the thread root id too when navigating to a thread

* Handle "Mark as read" action for thread notification, using `timeline.markAsRead`

* Log failures to mark rooms as read using the notification action

---------

Co-authored-by: Benoit Marty <benoit@matrix.org>
2025-10-30 15:15:00 +00:00
Benoit Marty
e8b7db22cd Merge pull request #5638 from element-hq/feature/bma/upgradeKtLint
Upgrade ktlint to 1.7.1 and ensure Renovate will upgrade the version
2025-10-30 15:40:56 +01:00
Benoit Marty
0f939f5eff Sadly detekt still needs this. It will be fixed in detekt 2.0.0 2025-10-30 15:01:14 +01:00
Benoit Marty
e17d731ff5 Kotlin way 2025-10-30 14:34:22 +01:00
Benoit Marty
214a855616 Remove exclusion, ktlint is now able to handle Kotlin context parameter. 2025-10-30 14:33:28 +01:00
Benoit Marty
fb9b373d98 Let Renovate upgrade KtLint version.
And move detekt version to quality section.
2025-10-30 14:33:27 +01:00
Benoit Marty
16c27926af Ignore some ktlint Rules (too many issues(?) to fix and not urgent) 2025-10-30 14:33:27 +01:00
Benoit Marty
8bfb86683d Fix "Arrow is redundant when parameter list is empty"
And other issues that ktlint now reports
2025-10-30 14:33:25 +01:00
renovate[bot]
d091960a3e fix(deps): update dependency io.sentry:sentry-android to v8.25.0 (#5629)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-10-30 13:32:48 +01:00
Benoit Marty
e22ecb68c3 Fix "Backing property is only allowed when a matching property or function exists" 2025-10-30 13:27:19 +01:00
Benoit Marty
f1c76c196f Use KtLint version 1.7.1 2025-10-30 13:04:26 +01:00
Jorge Martin Espinosa
1f5f6896c6 Fix marking a room as read re-instantiates its timeline (#5628)
* Add `Timeline.markAsRead` to avoid reinstantiating the timeline using `Room.markAsRead`

* Mark as read when exiting the room screen, destroy the timeline when fully closed

* Ensure `MarkAsFullyReadAndExit` event can only be processed once

* Fix `DelayedVisibility` not being displayed in previews
2025-10-30 08:39:06 +01:00
renovate[bot]
988815217a fix(deps): update dependency org.matrix.rustcomponents:sdk-android to v25.10.29 (#5625)
* fix(deps): update dependency org.matrix.rustcomponents:sdk-android to v25.10.29

* Rename `NoPointer` to `NoHandle` for the Rust FFI fakes

* `@Ignore` tests broken by FFI direct mapping

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Jorge Martín <jorgem@element.io>
2025-10-29 22:56:03 +01:00
Benoit Marty
3ebcafa705 Merge pull request #5622 from element-hq/feature/bma/mediaForward
Add ability to forward a media from the media viewer and the gallery
2025-10-29 13:15:42 +01:00
Benoit Marty
cc050a1f26 Merge branch 'develop' into feature/bma/mediaForward
# Conflicts:
#	appnav/src/main/kotlin/io/element/android/appnav/room/joined/JoinedRoomLoadedFlowNode.kt
2025-10-29 12:41:58 +01:00
renovate[bot]
0bc71acd8a fix(deps): update dependencyanalysis to v3.4.0 (#5624)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-10-29 11:56:32 +01:00
ganfra
277dd528ee Merge pull request #5619 from element-hq/feature/fga/space_members
Space : add view members entry
2025-10-29 10:53:45 +01:00
renovate[bot]
f1cce0f817 fix(deps): update dependency com.github.matrix-org:matrix-analytics-events to v0.29.2 (#5621)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-10-29 09:18:39 +01:00
Benoit Marty
725e6c9855 Rename fun. 2025-10-29 09:04:58 +01:00
Benoit Marty
93b1c9e597 Improve code on ShareNode 2025-10-29 09:03:37 +01:00
Jorge Martin Espinosa
7ed888af83 Fix issues with WorkManager on Android 12 and below (#5606)
* Add `getForegroundInfo` implementation to try to fix issues with WorkManager on Android 12 and below

This may be a MIUI-only issue as I couldn't reproduce it with several emulators on Android 11, 12 and 13.

* Use `setExpedited` only on Android 13 or higher, it's not needed on older versions

* Use an actual string resource, fix tests

* Fix review comments

* Fix broken test with Element Pro:

Instead of using Robolectric with API < 33 (since Pro uses minSdk 33) use a `BuildVersionSdkIntProvider`

* Remove `getForegroundInfo` and the associated permission, as we expect it to be dead code

* Fix lint issues

* Cleanup NotificationIdProvider

---------

Co-authored-by: Benoit Marty <benoit@matrix.org>
2025-10-28 20:06:57 +00:00
Benoit Marty
6ae0d67e69 Add missing tests. 2025-10-28 20:28:37 +01:00
Benoit Marty
f5b17d4ddb Remove unused dependency 2025-10-28 18:48:21 +01:00