Commit graph

2004 commits

Author SHA1 Message Date
ElementBot
e1b7171839
Sync Strings (#6626)
* Sync Strings from Localazy

* Use the previous plurals as plain strings

* Add extra case for 1 vs multiple users

* Update screenshots

---------

Co-authored-by: Jorge Martín <jorgem@element.io>
2026-04-20 17:09:10 +00:00
bxdxnn
8611b9c690
Fix crash when going back to threads list (#6620)
* Fix crash when going back to threads list
2026-04-20 15:36:31 +02:00
Benoit Marty
ae94e0c746
Merge pull request #6441 from timurgilfanov/feature-oled-black
Add Black theme option for battery saving on OLED displays
2026-04-17 15:41:49 +02:00
Benoit Marty
269d367130
Merge pull request #6464 from kalix127/feat/reply-with-voice-message
Support replying to messages with voice recordings
2026-04-17 14:49:04 +02:00
Benoit Marty
4e5542396f
Merge branch 'develop' into feature-oled-black 2026-04-17 14:47:15 +02:00
Jorge Martin Espinosa
c349f74ce8
Fix loading initial items of non-live timelines (#6598)
This was done automatically by the SDK in the past by returning a `Reset` timeline update, but this behaviour changed and now we have to do it.
2026-04-16 14:19:29 +00:00
Gianluca Iavicoli
67729f87c9
test: stabilize reply event ID test for voice message composer 2026-04-15 18:17:31 +02:00
Jorge Martin Espinosa
80470b3792
Feature: add room threads list (#6575)
Add threads list screen for rooms:

- Add `ThreadsListService` to subscribe to thread changes in the room.
- Create `ThreadsListView` and its associated node a presenters (the UI may change).
- Add a menu icon in the room screen to open it.

This is still pending info about unread threads, so several UI components related to it will be hidden.

* Add feature flag and use it to hide the access to this new screen

---------

Co-authored-by: ElementBot <android@element.io>
2026-04-15 12:14:22 +00:00
Timur Gilfanov
f7cfa6cda8
Merge branch 'develop' into feature-oled-black 2026-04-14 10:13:46 +04:00
bmarty
23c1112dcf Sync Strings from Localazy 2026-04-13 00:48:40 +00:00
Benoit Marty
5e3f3f31e8 Improve code. 2026-04-08 17:16:04 +02:00
Benoit Marty
d17992abe8 Ensure Mark as fully read is not invoked several times. 2026-04-08 17:15:04 +02:00
bxdxnn
22a51bae5c
Fix Threads not tappable in pinned messages list (#6535) 2026-04-08 11:25:59 +02:00
Benoit Marty
e63a50b512
Merge pull request #6517 from element-hq/feature/bma/compound10
Sync compound tokens https://github.com/element-hq/compound-design-tokens/releases/tag/v10.0.0
2026-04-08 09:40:14 +02:00
ElementBot
6ad85d4dfc
Sync Strings (#6537)
* Sync Strings from Localazy

* Sync strings.

---------

Co-authored-by: bmarty <3940906+bmarty@users.noreply.github.com>
Co-authored-by: Benoit Marty <benoit@matrix.org>
2026-04-07 16:02:12 +02:00
Timur Gilfanov
f19295d63d
Merge branch 'develop' into feature-oled-black 2026-04-05 12:06:20 +04:00
Benoit Marty
4ad495d36c
Add support for slash commands (under Feature Flag) (#6482)
* Add support for slash commands

* Update screenshots

* Rename module `slash` to `slashcommands`

* Rename `SlashCommand` to `SlashCommandService`

* Introduce MsgType in order to send text message with a different msgtype value.

* Format file and add parameter names, add default values and cleanup

* Add isSupported parameter to filter out unsupported yet commands.

* Slash commands: disable suggestions if the feature is disabled.

* Fix sending shrug command.

* Add missing test on SuggestionsProcessor

* Add tests on MessageComposerPresenter about slash command.

* Fix import ordering

* Add missing tests on CommandExecutor

* Add missing tests in MarkdownTextEditorStateTest

* Slash commands: Improve code when sending message with prefix.

* Slash commands: Add support for /unflip

---------

Co-authored-by: ElementBot <android@element.io>
2026-04-02 16:15:32 +02:00
Benoit Marty
e401619017 Changer border color of InReplyTo to separatorPrimary 2026-04-02 09:37:15 +02:00
Jorge Martin Espinosa
410a3d132b
Add floating/sticky date badge in the timeline (#6496)
* Add floating date indicator while scrolling the timeline (#6433)

* Add `FeatureFlags.FloatingDateBadge`. This enables displaying the floating date badge in the timeline as you scroll.

* Don't display the floating badge if the timeline isn't reversed. Otherwise, this will affect talkback users and break the existing navigation

* Use `TimelineItem.formattedDate()` to get the date to display. Always try finding the closest one (usually it will be just the 1st one we try).

* Align designs with iOS. Also fix shadows in fade animation by adding some paddings.

* Update screenshots

---------

Co-authored-by: Gianluca Iavicoli <gianluca.iavicoli04@gmail.com>
Co-authored-by: ElementBot <android@element.io>
2026-04-01 10:45:57 +00:00
Timur Gilfanov
d0dcbab750
Merge branch 'develop' into feature-oled-black 2026-03-30 11:08:53 +04:00
Gianluca Iavicoli
37da07a720
Revert unnecessary analytics refactor in voice message presenter 2026-03-27 21:18:55 +01:00
Benoit Marty
7d28c52242 Cleanup 2026-03-25 16:51:41 +01:00
Benoit Marty
747f588fa7 Update UI of replies. 2026-03-25 15:27:36 +01:00
Gianluca Iavicoli
4a5662a5e2
fix: reset composer mode after sending voice message reply 2026-03-25 00:55:57 +01:00
Gianluca Iavicoli
bf7ab31517
feat: support sending voice messages as replies 2026-03-25 00:53:57 +01:00
ganfra
92920b862b
Merge pull request #6342 from element-hq/feature/fga/live_location_sharing_setup
Setup live location sharing feature
2026-03-24 15:46:45 +01:00
Benoit Marty
75a6eb21ca
Merge pull request #6453 from element-hq/feature/bma/increaseIconSize
Increase icon size of audio and files in the timeline
2026-03-24 11:59:17 +01:00
renovate[bot]
2f99806603
fix(deps): update dependency androidx.compose.material3:material3 to v1.5.0-alpha15 (#6306)
* fix(deps): update dependency androidx.compose.material3:material3 to v1.5.0-alpha15

* Fix deprecations

* Add bottom sheet workaround

* Fix new lint issues

* Fix and ignore broken tests

* 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>
2026-03-24 11:24:07 +01:00
Benoit Marty
67f059a429 Attachments: change icon size to 24 and container to 36 2026-03-24 11:01:10 +01:00
ganfra
9a984e1423 Merge branch 'develop' into feature/fga/live_location_sharing_setup 2026-03-24 10:17:24 +01:00
ElementBot
7179ca867c
Sync Strings (#6435)
* Sync Strings from Localazy

* Sync strings.

---------

Co-authored-by: bmarty <3940906+bmarty@users.noreply.github.com>
Co-authored-by: Benoit Marty <benoit@matrix.org>
2026-03-23 18:05:26 +00:00
Jorge Martin Espinosa
eb7d65263a
Fix long messages not being clickable (#6356)
* Fix long messages not being clickable

As @bmarty found out, `clip = true` causes the click event to be ignored in some cases. Since we have the shape we want to draw and we're using a custom `onDraw` modifier anyway to cut-out part of the path, we can just draw everything using the modifier and avoid using `clip = true`.

This seems to fix the issue.

* Fix clipping of images or other items that cover the bubble

* Fix borders being displayed for contents

* Extract the layer drawing logic into `drawInLayer` to simplify the inlined code. Remove redundant code, those changes are now in the `drawInLayer` block

* Workaround for lint issue: it seems like detekt can't properly detect usages in content receivers

* Update screenshots

---------

Co-authored-by: ElementBot <android@element.io>
2026-03-23 18:11:55 +01:00
Benoit Marty
027da263c4
Merge pull request #6322 from element-hq/feature/bma/iterateDesignOnAttachment
Design iteration on file attachment in the timeline
2026-03-23 14:37:54 +01:00
Timur Gilfanov
a96c146d30 Introduce "Black" theme and refactor theme handling
* Add `Theme.Black` to the `Theme` enum and update `isDark()` to include it.
* Refactor `ElementTheme` to accept a `Theme` object instead of a `darkTheme` boolean, allowing for more specific color mapping (e.g., setting `bgCanvasDefault` to `Color.Black` for the Black theme).
* Update `AdvancedSettingsPresenter` and `AdvancedSettingsState` to include "Black" as a user-selectable theme option.
* Adjust `ElementThemeApp` and `MaterialTextPreview` to handle the expanded theme selection.
* Add `ElementPreviewBlack` and update existing preview components to support the new theme.
* Update Konsist tests to ensure `@PreviewsDayNight` annotated functions don't have "BlackPreview" suffix.
2026-03-23 15:26:16 +04:00
Gianluca Iavicoli
800a9ab972
Fix keyboard not auto-opening when editing a message (#6412)
* fix: auto-open keyboard when editing a message

* fix: show keyboard on focused editor view instead of root view
2026-03-23 10:54:59 +01:00
bxdxnn
139d75d1ba
Fix room member not tappable in a Thread (#6416) 2026-03-19 14:23:10 +01:00
Benoit Marty
13578aa09b Sync string again. 2026-03-16 14:54:06 +01:00
bmarty
299d5a9394 Sync Strings from Localazy 2026-03-16 00:42:32 +00:00
ganfra
4a29fe4d94 Remove duplicate location content and reorder Live mode 2026-03-13 15:50:33 +01:00
ganfra
ccc5945e6f Fix quality! 2026-03-12 21:12:52 +01:00
ganfra
96147967ac Code cleanup 2026-03-12 12:35:46 +01:00
Benoit Marty
6a646550c8 Improve preview by adding a background color. 2026-03-11 15:43:15 +01:00
Benoit Marty
f97c61a386 Iterate on file attachment rendering in the timeline. Closes #6319 2026-03-11 15:30:15 +01:00
ganfra
0056a3f163 Fix compilation 2026-03-09 21:19:57 +01:00
ganfra
f2d4ffc5bd Introduce LiveLocationContent for the timeline (needs sdk) 2026-03-09 20:54:01 +01:00
ganfra
ffad69b7b9 Make sure we can display both Live and Static locations in ShowLocation 2026-03-09 20:54:01 +01:00
ganfra
8a12cba923 Rename send location to share location 2026-03-09 20:54:01 +01:00
Valere Fedronic
95049849cc
Merge branch 'develop' into valere/rtc/voice_call 2026-03-09 17:18:55 +01:00
ElementBot
73961b4940
Sync Strings (#6302)
Co-authored-by: bmarty <3940906+bmarty@users.noreply.github.com>
2026-03-09 10:38:07 +01:00
Valere
bad6085fb2 review: consistency use isAudioCall everywhere (instead of voiceOnly) 2026-03-06 12:19:05 +01:00