Commit graph

13335 commits

Author SHA1 Message Date
renovate[bot]
aae384bba8 fix(deps): update dependency io.element.android:element-call-embedded to v0.16.1 2025-10-31 12:45:27 +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
Benoit Marty
df4853e1f5 Fix test. 2025-10-31 10:10:00 +01:00
Benoit Marty
af2429d8ed Fix issue after rebase. 2025-10-31 10:09:24 +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
231077d94b Remove obsolete TODO 2025-10-31 09:32:41 +01:00
Benoit Marty
d5fdc5f8e6 Small cleanup 2025-10-31 09:32:40 +01:00
Benoit Marty
947347b3f1 Move call to setGroup to configureWith 2025-10-31 09:31:57 +01:00
Benoit Marty
31ff72b319 Use TestScope.backgroundScope 2025-10-31 09:29:48 +01:00
Benoit Marty
fbecf8d34f Let DefaultNotificationDrawerManager use NotificationDisplayer instead of NotificationManagerCompat 2025-10-31 09:29:48 +01:00
Benoit Marty
55517e5cb1 Create const for diagnostic tag. 2025-10-31 09:27:35 +01:00
Benoit Marty
f0e42a70fb Use better names for API. 2025-10-31 09:27:34 +01:00
Benoit Marty
529c708d7e Rename OneShotNotification.key to OneShotNotification.tag for clarity. 2025-10-31 09:25:04 +01:00
Benoit Marty
b0e5e6cc61 NotificationDataFactory: improve API 2025-10-31 09:25:03 +01:00
Benoit Marty
031ca4f333 Notification: show userId in notification when several accounts are configured. 2025-10-31 09:25:01 +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