Commit Graph

11372 Commits

Author SHA1 Message Date
Benoit Marty
324fc28e2d Add a revered parameter to AvatarRow to be able to stack avatar the other way. 2025-08-20 16:51:19 +02:00
Benoit Marty
333b1c8a48 Move AvatarRow to designsystem module, because it will be used by spaces. 2025-08-20 15:56:46 +02:00
Benoit Marty
e26ef969fd Add UI component OrganizationHeader
Ref: https://www.figma.com/design/G1xy0HDZKJf5TCRFmKb5d5/Compound-Android-Components?node-id=3643-2048&m=dev
2025-08-20 15:41:22 +02:00
Benoit Marty
aadaeb78d8 Add UI component EditableOrgAvatar
Ref: https://www.figma.com/design/G1xy0HDZKJf5TCRFmKb5d5/Compound-Android-Components?node-id=3643-2678&m=dev
2025-08-20 15:17:53 +02:00
Jorge Martin Espinosa
59a8aaebff Add shortcut suggestions for rooms, remove then when leaving (#5180)
* Report shortcut usage for outgoing messages

This patch adds support for creating and pushing dynamic
long-lived shortcuts for outgoing messages. This together
with an existing reference to the roomId used by the
shortcuts as an identifer allows conversations to be
prioritized.

See https://developer.android.com/training/sharing/direct-share-targets#report-usage-outgoing

* Simplify how to get the other user in a DM room

* Add initial avatar icons to shortcuts

* Remove room shortcuts when they're no longer joined

* Try using API 33 for the new tests. They worked locally with API 30, so it's weird the CI asks for a higher API version.

* Add observers for the pin code and session logout states. With this we can prevent new shortcuts from being created and remove existing ones when needed.

* Wrap all calls to `ShortcutManagerCompat` with `runCatchingExceptions` to avoid crashes

* Make `DefaultNotificationConversationService` a singleton.

---------

Co-authored-by: networkException <git@nwex.de>
Co-authored-by: ElementBot <android@element.io>
2025-08-19 16:02:51 +02:00
Jorge Martin Espinosa
285066c206 Threads - first iteration (#5165)
* Initial threads support: parse `ThreadSummary`.

Replace several `isThreaded` values with `EventThreadInfo`, which contains the info about the event either being the root of a thread or part of it.

* Add `Threaded` timeline mode

* Add a `liveTimeline` parameter to `TimelineController`'s  constructor. This way we can customise which timeline will be used as the 'live' one. Also add `@LiveTimeline` DI qualifier for the actual live timeline of the room.

* Create `ThreadedMessagesNode`. Allow opening a thread in a separate screen.

* Add the callbacks for the list menu actions - even if they're the wrong ones and will send the data to the room instead

* Send attachments and location in threads

* Fix polls in threads, add support for sending voice messages in threads

* Display thread summaries only when the feature flag is enabled

* Use 'Reply' instead of 'Reply in thread' when in threaded timeline mode

* Remove incorrect usage of `Timeline` in `MessageComposerPresenter`. This led to replies to threaded events not appearing as actual replies.

---------

Co-authored-by: ElementBot <android@element.io>
2025-08-19 13:35:48 +00:00
Benoit Marty
8675bf5215 Merge pull request #5185 from element-hq/feature/bma/invitePoepleUi
Iterate on invite people UI
2025-08-19 11:12:45 +02:00
ElementBot
fbfea53630 Update screenshots 2025-08-19 08:43:19 +00:00
Jorge Martin Espinosa
883b62b34c Fix sending videos in API <= 30 (#5186)
This is caused by a bug in the Media3 Transform library: https://github.com/androidx/media/issues/2535
2025-08-19 10:39:03 +02:00
Benoit Marty
dd5a3acaec Create common SelectedItem composable. 2025-08-19 10:19:12 +02:00
Benoit Marty
bf52e99295 Improve accessibility. 2025-08-19 10:02:53 +02:00
Benoit Marty
cad3b5b8ad Rename val to improve code readability 2025-08-19 09:58:31 +02:00
Benoit Marty
357d558f04 Improve preview of SelectedRoom and SelectedUser. 2025-08-19 09:54:22 +02:00
Benoit Marty
fd75b71733 Improve preview of SelectedRoom. 2025-08-19 09:48:04 +02:00
renovate[bot]
487cf6b9e1 Update android.gradle.plugin to v8.12.1 (#5184)
* Update android.gradle.plugin to v8.12.1

* Upgrade lint version to 8.12.1 (version 8.13.+ or 9.+ break the lint job)

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Jorge Martín <jorgem@element.io>
2025-08-19 08:22:53 +02:00
Jorge Martin Espinosa
5feb7a99a9 Fix bitrate value used for video transcoding (#5183)
* Fix bitrate value used for video transcoding:

It should be 1000 times what it is now. The video size estimation was wrong since the retrieved duration value was in milliseconds, not seconds.

* Use `Duration` as the result type for `getDuration`
2025-08-18 21:12:11 +00:00
ElementBot
8dbf35518e Update screenshots 2025-08-18 15:30:03 +00:00
Benoit Marty
c0fe9f2616 Allow preview function name to end with RtlPreview 2025-08-18 17:16:48 +02:00
Benoit Marty
91369e9455 Update text colors when the state is disabled. 2025-08-18 17:16:46 +02:00
Benoit Marty
5d2246569f [UI] Iterate on user invite view. 2025-08-18 17:16:28 +02:00
Benoit Marty
b09319ab23 [UI] Iterate on selected room rendering. 2025-08-18 17:16:07 +02:00
Benoit Marty
725b1a8443 [UI] Iterate on user invite view. 2025-08-18 17:16:06 +02:00
Benoit Marty
d7d2fe3ffb [UI] Iterate on selected user rendering. 2025-08-18 17:16:04 +02:00
renovate[bot]
aac9642159 Update dependency org.matrix.rustcomponents:sdk-android to v25.8.18 (#5182)
* Update dependency org.matrix.rustcomponents:sdk-android to v25.8.18

* Fix broken API changes:
- The send queue usage is now mandatory.
- The media upload progress now comes back in the send queue state (this still hasn't been applied to the UI in the timeline).

* Update screenshots
---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Jorge Martín <jorgem@element.io>
Co-authored-by: ElementBot <android@element.io>
2025-08-18 16:41:14 +02:00
renovate[bot]
fcb63c02e1 Update kotlin (#5169)
* Update kotlin

* Update Kotlin to v2.2.10

* No need for the compat version.

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Benoit Marty <benoit@matrix.org>
2025-08-18 09:52:02 +00:00
ElementBot
a4cee52815 Sync Strings from Localazy (#5178)
Co-authored-by: bmarty <3940906+bmarty@users.noreply.github.com>
2025-08-18 11:09:27 +02:00
renovate[bot]
c4274ca5ce Update dependency androidx.core:core-ktx to v1.17.0 (#5168)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-08-18 10:35:01 +02:00
Benoit Marty
8e37d16f9f Merge pull request #5166 from element-hq/feature/fga/create_room_flow_rework
Create room flow rework
2025-08-18 09:38:28 +02:00
ElementBot
72aa0be6b3 Update screenshots 2025-08-14 15:09:26 +00:00
Benoit Marty
a4382201c8 Merge pull request #5173 from element-hq/feature/bma/sdk36_2
Build release with the latest build tools 36.0.0
2025-08-14 16:59:36 +02:00
Benoit Marty
16acfa28d7 Avoid using runBlocking in Node resolve function. 2025-08-14 16:53:35 +02:00
Benoit Marty
7559385439 Revert "Provide default value for modifier."
This reverts commit ff93a82b06.
2025-08-14 16:05:50 +02:00
Benoit Marty
e31f6cb0b6 Use SessionCoroutineScope here. 2025-08-14 14:41:51 +02:00
Benoit Marty
ff93a82b06 Provide default value for modifier. 2025-08-14 14:39:00 +02:00
Benoit Marty
08f869c6f9 Build release with build tools from SDK 36 and add a not to not forget last time we update the value of COMPILE_SDK 2025-08-14 14:31:22 +02:00
Benoit Marty
e278dd5995 Update changelog for v25.08.3 2025-08-14 14:26:36 +02:00
Benoit Marty
c45284457d Merge tag 'v25.08.3' into develop
tag
2025-08-14 12:46:52 +02:00
Benoit Marty
76fe53ed23 Merge branch 'release/25.08.3' into main 2025-08-14 12:18:54 +02:00
Benoit Marty
8b3cb2be97 Adding fastlane file for version 25.08.3 2025-08-14 12:07:06 +02:00
Benoit Marty
facddbf3d5 Setting version for the release 25.08.3 2025-08-14 12:06:32 +02:00
Benoit Marty
0be9e4cd66 Use string from Localazy. 2025-08-14 11:46:28 +02:00
Benoit Marty
ae00c28c0d iterate on the isSelected value. Let the UI decide how to render. 2025-08-14 11:46:26 +02:00
renovate[bot]
0365ee94fa Update haze to v1.6.10 (#5167)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-08-14 09:57:13 +02:00
Benoit Marty
e74fcde43e Remove default values for InvitableUser's constructor 2025-08-14 09:10:22 +02:00
Benoit Marty
35544c848e Merge pull request #5161 from element-hq/feature/bma/movePushHistory
Move push history entry point from notification settings to developer settings
2025-08-14 09:00:31 +02:00
Benoit Marty
fbacf2bb2d Try to fix tests on CI (they are passing locally). 2025-08-13 18:43:16 +02:00
Benoit Marty
590c9fa6f5 Update Maestro test. Invite people step is now performed after the room has been created. 2025-08-13 18:01:43 +02:00
Benoit Marty
58a3ec767b Cleanup Localazy config and do a sync. 2025-08-13 17:41:44 +02:00
Benoit Marty
ea86be6a22 Use string from Localazy 2025-08-13 17:19:38 +02:00
ElementBot
e1cc402e4b Update screenshots 2025-08-13 15:13:24 +00:00