Commit Graph

1613 Commits

Author SHA1 Message Date
ElementBot aced1ea64d Sync Strings (#7657)
* Sync Strings from Localazy

* Update screenshots

---------

Co-authored-by: jmartinesp <480955+jmartinesp@users.noreply.github.com>
2026-09-07 14:19:38 +02:00
Benoit Marty 66c502853c Merge pull request #7647 from element-hq/feature/bma/cleaupProguardFiles
Clean up ProGuard keep rules files
2026-09-04 17:37:53 +02:00
Benoit Marty 0e12d4e119 Revert "Say so when this session has no secrets to verify another one with" (#7644) 2026-09-04 14:39:50 +02:00
Benoit Marty 55bfcac6ff Remove empty (or comment only) proguard files. 2026-09-04 11:51:59 +02:00
hayyaksi d2f540ae79 Expose the timeline item long press and swipe to reply as TalkBack actions (#7458)
* Expose the timeline item gestures as TalkBack actions

Long pressing a timeline item opens the action list, and swiping it
starts a reply. Neither gesture is reachable with a screen reader
enabled, so those two actions were unavailable to TalkBack users.

Publish them as accessibility custom actions on the event row, reusing
the existing "Message actions" and "Reply" strings. The reply action is
only offered when the user is allowed to reply, matching the swipe.

* Update screenshots

---------

Co-authored-by: ElementBot <android@element.io>
2026-09-02 16:58:26 +02:00
Benoit Marty 94bfcc41a6 Merge pull request #7628 from element-hq/sync-localazy
Let's merge before we get a conflict.
2026-09-02 15:03:21 +02:00
Benoit Marty 992da95e4c Merge pull request #7551 from hayaksi1/fix/5344-verification-unavailable
Say so when this session has no secrets to verify another one with
2026-09-02 14:56:51 +02:00
ElementBot eea7fb9424 Update screenshots 2026-09-02 11:31:48 +00:00
jmartinesp dfccde93c6 Sync Strings from Localazy 2026-09-02 10:07:17 +00:00
bxdxnn 84cd878069 Merge remote-tracking branch 'origin/develop' into HEAD 2026-08-27 18:40:10 +00:00
Benoit Marty dd7a7d57be Merge pull request #7567 from hayaksi1/fix/4099-server-unreachable
Say when the server cannot be reached instead of showing nothing
2026-08-26 16:56:40 +02:00
Benoit Marty dba8f1b276 Merge pull request #7577 from element-hq/feature/bma/explorePushRules
Add a "Push rules" entry in the developer options
2026-08-26 13:54:07 +02:00
ElementBot 0e93a943a5 Update screenshots 2026-08-26 11:16:07 +00:00
ElementBot 69ba9cf21e Update screenshots 2026-08-25 18:10:19 +00:00
hayaksi1 ca117ebcdd Record the screenshots for the new incoming verification step 2026-08-25 17:04:49 +03:00
ElementBot 806f7c500c Update screenshots 2026-08-25 10:09:30 +00:00
ElementBot c62ff733fb Update screenshots 2026-08-25 08:37:53 +00:00
bxdxnn b08224fedb Merge 2026-08-24 20:09:11 +00:00
ElementBot 95866f960e Update screenshots 2026-08-24 17:16:01 +00:00
ElementBot 8fd491347a Update screenshots 2026-08-24 15:12:53 +00:00
Benoit Marty 679c6e4786 Merge pull request #7410 from element-hq/feat/global-search-screen
Feature: global search
2026-08-24 09:34:35 +02:00
ElementBot d05978cc16 Update screenshots 2026-08-21 11:00:17 +00:00
ElementBot df2ea586bd Update screenshots 2026-08-21 08:13:54 +00:00
ElementBot babed8eb1f Update screenshots 2026-08-20 18:01:33 +00:00
ElementBot f854fbd70a Update screenshots 2026-08-20 14:18:15 +02:00
hayyaksi c362bca527 Keep the send button when the composer is emptied while editing a message (#7456)
* Keep the send button when the composer is emptied while editing

rememberEndButtonParams checked whether the composer had sendable text
before it checked whether the user was editing a message, so clearing
the text of a message being edited replaced the send button with the
voice recorder button. Starting a recording from there abandons the
edit.

Check the editing branch first, as the formatting composer already does,
and let it render a disabled send button when there is nothing to send.

* Update screenshots
2026-08-20 08:55:50 +02:00
Benoit Marty 1c94e89ee8 Merge pull request #7394 from element-hq/feature/account-provider-selection
Simplify choosing the account provider during sign in, with autocomplete of previously used ones
2026-08-19 17:06:47 +02:00
ElementBot f2114d94f1 Update screenshots 2026-08-19 14:05:29 +00:00
hayyaksi ee1348e19e Give the room name in the timeline top bar a 48dp tap target (#7450)
* Give the room name in the timeline top bar a 48dp tap target

The row carrying the room avatar and name is the control that opens the
room details, but it is only as tall as its content, which is under the
48dp minimum recommended for a touch target. Constrain it to a minimum
height of 48dp. The children stay centred inside the app bar, so nothing
moves visually.

* Update screenshots

The accessibility snapshot of the timeline is the only one the change
affects: the node which opens the room details now reports a 48dp tall
bounding box. The room name, the avatar and the icons stay where they
were.
2026-08-19 12:29:24 +02:00
ElementBot 2c4cf090cb Update screenshots 2026-08-14 18:27:41 +00:00
Benoit Marty fbe2b3574f Merge pull request #7363 from hayaksi1/fix/2419-empty-waveform-seek
Let a voice message without a waveform be seeked
2026-08-11 16:00:59 +02:00
Benoit Marty 12f4330724 Merge pull request #7371 from hayaksi1/fix/5428-send-to-room-subtitle
Show the alias or the direct message user's Matrix ID in the room picker
2026-08-11 15:59:29 +02:00
Benoit Marty ad39144a99 Merge pull request #7362 from hayaksi1/fix/4973-media-gallery-error
Keep the opened image on screen when the media gallery fails to load
2026-08-11 14:15:01 +02:00
ElementBot 77ae52513c Update screenshots 2026-08-11 08:18:52 +00:00
ganfra 0de78ed956 Merge branch 'develop' into feature/fga/user_status_last_pieces 2026-08-11 10:04:18 +02:00
ElementBot f7936b92d0 Update screenshots 2026-08-10 10:31:57 +00:00
Benoit Marty 650b38429c Show a Message not found placeholder when a replied to message cannot be loaded (#7376)
* Show a Message not found placeholder when a replied to message cannot be loaded

When the replied to event could not be fetched, the reply preview rendered the
raw SDK error string in critical styling, and tapping it emitted a focus
request that could never succeed, so the user got a dead end dialog.

Render the localised error_message_not_found string in the neutral italic style
already used for redacted and undecryptable replies, and drop the click handler
for that case. The existing key is reused rather than adding a new one; a "you
do not have access" wording was rejected because this state covers any failure
to load the event, not only a permission problem.

* Update screenshots

* Trigger CI after recording screenshots

---------

Co-authored-by: ElementBot <android@element.io>
2026-08-10 11:59:37 +02:00
Eklavya Jandial 19c6526841 [Task] Show active call participants in the people list #7199 (#7300) 2026-08-10 09:40:12 +02:00
ElementBot 7989361114 Update screenshots 2026-08-09 12:41:41 +00:00
ElementBot 4c1d660cf3 Update screenshots 2026-08-09 12:41:30 +00:00
ElementBot 73f26c3d74 Update screenshots 2026-08-09 11:48:57 +00:00
ElementBot 813122eebd Update screenshots 2026-08-09 11:48:53 +00:00
ElementBot b7c0374c7c Update screenshots 2026-08-07 09:53:47 +00:00
ElementBot 0e1cb2df5e Update screenshots 2026-08-07 07:20:49 +00:00
ElementBot 9d27ab4caf Update screenshots 2026-08-06 14:46:29 +02:00
Jorge Martin Espinosa af9db20f4f Add extra vertical padding to ReplyToInvalidContent and ReplyToNotFoundContent (#7288)
* Add extra vertical padding to `ReplyToInvalidContent` and `ReplyToNotFoundContent`

* Update screenshots

---------

Co-authored-by: ElementBot <android@element.io>
2026-07-30 10:30:22 +02:00
Jorge Martin Espinosa adc1b50492 Fix insets in several screens (#7285)
* Fix insets in several screens

UI components in the room list, room member list, etc. now have better insets based on `WindowInsets.safeDrawing`

* Update screenshots

---------

Co-authored-by: ElementBot <android@element.io>
2026-07-28 10:29:42 +02:00
Matt Van Horn 9042b4be4f Make settings section separators visible in black theme (#7039)
* Make settings section separators visible in black theme

In the Black (OLED) theme the canvas is forced to pure black while the
section-separator divider keeps its standard-dark colour (outlineVariant,
~10% alpha white), leaving dividers in Settings and related screens almost
invisible. Add an OLED-aware listSectionDivider alias that lightens the
divider only when the black theme is active, and use it for the
ListSectionHeader divider. Light and standard-dark themes are unchanged.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Signed-off-by: Matt Van Horn <455140+mvanhorn@users.noreply.github.com>

* Set separatorSecondary for Black theme instead of a custom divider alias

Following review feedback: now that the global HorizontalDivider uses
separatorSecondary (#7054), give the Black/OLED theme a visible
separatorSecondary value in ElementTheme instead of carrying a bespoke
listSectionDivider alias. This fixes all separators on pure black, not
just section headers. The exact color is pending design confirmation.

* chore(theme): remove in-code design discussion comment

Move design discussion out of the code per review; the divider color
decision lives in the PR thread.

* Update screenshots

Signed-off-by: Matt Van Horn <455140+mvanhorn@users.noreply.github.com>

---------

Signed-off-by: Matt Van Horn <455140+mvanhorn@users.noreply.github.com>
Co-authored-by: Matt Van Horn <455140+mvanhorn@users.noreply.github.com>
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Co-authored-by: ElementBot <android@element.io>
Co-authored-by: Jorge Martin Espinosa <jorgem@element.io>
2026-07-28 09:51:15 +02:00
Jorge Martin Espinosa cc3c68411e Try making HeaderFooterView more robust (#7267)
* Try making `HeaderFooterView` more robust

Create `HeaderFooterLayout` to properly calculate the content size when the component is scrollable so it's at least the size of the available space.

* Make `DesktopNoticeView` scrollable

For this, `NumberedListOrganism` can't be a `LazyColumn`, since that's a lazy layout with no intrinsic height and Compose doesn't know how to size it.

* Fix the case where no header or content composables are supplied

* Fix insets in non-scrollable UI

* Remove `movableContentOf`, suppress the warning instead since the `isScrollable` parameter should never toggle this behavior

* Update screenshots

---------

Co-authored-by: ElementBot <android@element.io>
2026-07-28 09:38:56 +02:00
Jorge Martin Espinosa 77edfec61a Use the right insets in the home screen UI (#7271)
* Use the right insets in the home screen UI

That's `WindowInsets.statusBar` for the `Scaffold` component, then `WindowInsets.navigationBar` for the `LazyColum.contentPadding`

* Apply it to other screens with long lists of items too

* Apply the insets to `PreferencePage` too

* Apply inset changes to other screens with scrollable content

* Add helper insets/padding values based on review suggestions.

* Use the newly added insets/padding values in several scaffold and scrollable columns

---------

Co-authored-by: ElementBot <android@element.io>
2026-07-27 18:17:14 +02:00