Commit Graph

1835 Commits

Author SHA1 Message Date
ganfra
c8d4ca66cf Merge pull request #5830 from element-hq/sync-localazy
Sync Strings
2025-12-02 20:58:45 +01:00
Jorge Martin Espinosa
77be19bf3b Load JoinedRoom in home screen, pass it to the room flow (#5817)
* Load `JoinedRoom` in `HomeFlowNode.navigateToRoom`, then pass it to the next navigation nodes

* Add delayed loading indicator for cases when loading the room takes too long

* Avoid an extra FFI call in `RustRoomFactory`.

Use `RoomInfo.membership` instead.

Also use `computation` dispatcher, since it should reduce the delay when switching contexts.

* Remove the dispatcher usage when loading the room in `HomeFlowNode`, we immediately call a method that changes the dispatcher used

* Make sure only a single room is opened at a time
2025-12-02 15:22:55 +00:00
bmarty
2b49c40592 Sync Strings from Localazy 2025-12-01 00:23:54 +00:00
Jorge Martín
7a1dd24dbd Make sure we don't finish NotificationTapOpensTimeline until we've actually rendered the timeline event we need to focus on 2025-11-28 14:15:54 +01:00
Jorge Martín
29117ce93d Add AnalyticsService.cancelLongRunningTransaction and AnalyticsService.finishLongRunningTransaction 2025-11-28 14:15:54 +01:00
Jorge Martín
93feed38bf Add transaction trees for opening a room so we can have a nice trace view 2025-11-28 14:15:54 +01:00
Jorge Martín
2a011bf072 Add OpenRoom long running analytic transaction 2025-11-28 14:15:54 +01:00
Jorge Martín
5681d7c611 Add a performance check for notification tap -> populated timeline time 2025-11-28 14:15:54 +01:00
ganfra
e3315406c5 Merge pull request #5809 from element-hq/feature/fga/new_latest_event
misc : use newLatestEvent api from sdk
2025-11-26 12:30:34 +01:00
ganfra
ca526580fd misc : use new_latest_event api (+ some renaming) 2025-11-26 10:58:16 +01:00
Benoit Marty
4ec096511b hasSize(0) -> isEmpty() 2025-11-25 17:03:00 +01:00
ElementBot
42dd6c3544 Sync Strings from Localazy (#5782)
Co-authored-by: jmartinesp <480955+jmartinesp@users.noreply.github.com>
2025-11-20 15:25:19 +00:00
Benoit Marty
2861d1cf8e Ensure that htmlConverterProvider is initialized when viewing Pinned events. Fixes #5763 2025-11-19 14:37:19 +01:00
Benoit Marty
de2ab5a557 Merge pull request #5722 from element-hq/feature/bma/moduleCleanup
Module cleanup
2025-11-18 16:14:10 +01:00
Jorge Martin Espinosa
6bdb4d1ad4 Send read receipts using the current timeline, not the live timeline (#5731)
This fixes sending read receipts in threaded timelines.
2025-11-17 13:33:17 +01:00
Benoit Marty
b3ec256dfa API modules do not need to setup dependency injection.
Move the implementation to the impl modules.
2025-11-12 19:05:39 +01:00
Benoit Marty
30d39a3290 Ensure bottom sheet is collapsed when leaving RTE mode. Closes #5635 2025-11-10 16:59:36 +01:00
Benoit Marty
c62f834917 Format - no other change. 2025-11-10 16:59:00 +01:00
Benoit Marty
a902533247 Rename MessageComposerEvents to MessageComposerEvent 2025-11-10 16:29:30 +01:00
Benoit Marty
1292da2a72 Copyright: Add Element Creations Ltd. copyright 2025-11-10 11:05:05 +01:00
Benoit Marty
b748fcc631 Copyright: Add final period 2025-11-10 10:13:41 +01:00
Benoit Marty
0a0224b586 Copyright: run command uv run license-editor --repository ../element-x-android 2025-11-10 10:09:26 +01:00
Benoit Marty
f32e893361 Merge pull request #5698 from element-hq/feature/bma/handleEvent
Code consistency around view event handling
2025-11-10 09:36:04 +01:00
Benoit Marty
cffd4c31c9 Fix compilation issue 2025-11-07 13:35:23 +01:00
Benoit Marty
81aebba8cb Rename parameter to event for code consistency 2025-11-07 12:28:16 +01:00
Benoit Marty
cf19daf3a4 Rename handleEvents to handleEvent 2025-11-07 12:21:43 +01:00
Benoit Marty
4283fe8634 Update how eventSink is used in DefaultVoiceMessageComposerPresenter 2025-11-07 12:18:47 +01:00
Skye Elliot
87ef2179a1 feat: Convert ComposerAlertMolecule to use alert levels. 2025-11-06 12:44:02 +00:00
Benoit Marty
a1e270578a Merge pull request #5672 from element-hq/feature/bma/handleEvents
Always use the handleEvent(s) function the same way.
2025-11-04 11:20:22 +01:00
Benoit Marty
0743b56bc4 Always use the handleEvent(s) function the same way. 2025-11-03 18:49:00 +01:00
Benoit Marty
5b18f6f93e Code cleanup 2025-11-03 15:53:31 +01:00
Benoit Marty
876f692f3f Rename MessagesEntryPointNode to MessagesEntryPoint.NodeProxy for consistency. We already have a NodeProxy. 2025-11-03 15:17:27 +01:00
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
Benoit Marty
e70d767183 Remove context(parentNode: Node) and provide the parent Node as a parameter. 2025-10-31 12:04:57 +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
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
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
Benoit Marty
725e6c9855 Rename fun. 2025-10-29 09:04:58 +01:00
Benoit Marty
21bae4aee2 Add Forward action to MediaDetailsBottomSheet. Closes #5454
Improve API of Callback when forwarding Event.
2025-10-28 18:13:53 +01:00
Benoit Marty
e9cfce915a Extract code for forwarding Event to its own modules. 2025-10-28 15:42:39 +01:00
ElementBot
b2aa6b1622 Sync Strings from Localazy (#5610)
Co-authored-by: bmarty <3940906+bmarty@users.noreply.github.com>
2025-10-27 13:53:07 +01:00
Benoit Marty
826cacf209 Remove @Inject, not necessary anymore when class is annotated with @ContributesBinding 2025-10-22 18:52:37 +02:00
Benoit Marty
acdef75949 Merge remote-tracking branch 'origin/develop' into bma/brandColorFix 2025-10-22 12:27:00 +02:00