Commit Graph

5948 Commits

Author SHA1 Message Date
Jenna Vassar 0399dab1da Dismiss mark as unread button eagerly 2026-05-21 08:48:38 -07:00
Jenna Vassar bdb42759de Show jump-to-unread when read marker is outside the loaded window
When the m.fully_read marker event is older than the loaded timeline
window, no virtual ReadMarker item is inserted and the chevron-up FAB
silently no-ops. Surfaces the SDK's new fully_read_event_id on RoomInfo
and routes the tap through the existing FocusOnEvent flow so the FAB
appears in catch-up scenarios and lands the user on the marker.

Bumps matrix-rust-components-kotlin to 26.05.20 to pick up the FFI
field; absorbs the ClientBuildException.InvalidRawKey and suspend
SpaceRoomList.rooms / subscribeToRoomUpdate API breaks.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-21 07:11:53 -07:00
Jenna Vassar 257040f5ca Merge remote-tracking branch 'upstream/develop' into feature/scroll-to-unread-messages
# Conflicts:
#	features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/MessagesView.kt
#	features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/TimelinePresenter.kt
#	features/messages/impl/src/test/kotlin/io/element/android/features/messages/impl/timeline/TimelinePresenterTest.kt
2026-05-12 06:57:52 -07:00
Benoit Marty b11fcec985 Merge pull request #6767 from element-hq/feature/bma/llsAndThread
Prevent user from starting LLS in thread
2026-05-12 14:24:16 +02:00
Benoit Marty 72be7ff1f9 Reduce FeatureFlags Knock effect on room creation and room edition form.
Closes #6701
2026-05-12 12:23:16 +02:00
Jenna Vassar 8d8ac9373e Rename preview to reflect actual state 2026-05-11 12:27:00 -07:00
Jenna Vassar 65ed527384 Add comment to explain jump to bottom button containing box 2026-05-11 12:26:59 -07:00
Jenna Vassar e0046e9862 Return null instead of return@launch
Co-authored-by: Benoit Marty <benoit.marty@gmail.com>
2026-05-11 11:27:31 -07:00
Jorge Martin Espinosa 11476c73cf Adapt to new DM definition changes in the SDK (#6748)
* Set `DmRoomDefinition.TwoPeople` in `ClientBuilder`. This applies the 'direct and with at most 2 non-service members' rule to what the SDK should consider a DM.

* Map `RoomInfo.isDm` from the SDK

* Map `NotificationData.isDm` from `NotificationInfo.roomInfo.isDm`

* Remove `RoomIsDmCheck` file as its extension functions are now redundant. Move `Room.isDm` helper function to `BaseRoom`.

* Map `isDm` in `SpaceRoom` from the SDK too

* Replace `isDirect` with `isDm` where possible

* Map `RoomMember.isServiceMember` from the SDK and use it to tell apart normal members of a room from service members (i.e. `RoomMembersState.getDirectRoomMember`)
2026-05-11 17:22:16 +02:00
Jorge Martin Espinosa 1ffc09e046 Stop removing the logs dir when clearing cache (#6765) 2026-05-11 16:55:40 +02:00
Benoit Marty 7f545079ad Prevent user from starting LLS in thread 2026-05-11 14:49:53 +02:00
ganfra e49e183178 Feature : share live location (#6741)
* First live location sharing sending implementation

* Simplify logic around canStop sharing

* Add some debug logs around LiveLocationSharingService

* Add LiveLocationException

* Expose beaconId to identify the current share

* Throttle live location instead of debouncing

* Keep sync alive when sharing live location

* Improve LiveLocation sharing

* Show LiveLocationDisclaimer

* Read minDistanceUpdate in LiveLocationSharingService

* Set minDistanceUpdate in AdvancedSettings

* Display banner in room when sharing live location

* Fix tests around LiveLocationSharing

* Ensure shares are properly restarted/stopped when app is re-launched

* Ensure LLS data is cleared when session is removed

* Update and fix LLS tests

* Handle Start LLS in ui

* Add check LLS permissions

* Remove hardcoded strings

* Fix quality and format

* Create DeviceLocationProvider so we can share location data between sources (presenter/live location service)

* Update screenshots

* Fix warning

* Do not try to stop if it was not sharing

* Revert "Create DeviceLocationProvider so we can share location data between sources (presenter/live location service)"

This reverts commit ba12bd968e82941cc231bdbb449310b24c97c5b8.

* Tweak location provider config values

* Address PR review remarks

* Fix ktlint

* Update screenshots

* Fix some tests after merging develop

* Adjust TimelineItemLocationView ui to match figma

* Update screenshots

* Documentation and cleanup

* Remove temporary resource

---------

Co-authored-by: ElementBot <android@element.io>
Co-authored-by: Benoit Marty <benoit@matrix.org>
Co-authored-by: Benoit Marty <benoitm@matrix.org>
2026-05-11 08:19:28 +00:00
ElementBot 0c657c258a Sync Strings from Localazy (#6761)
Co-authored-by: bmarty <3940906+bmarty@users.noreply.github.com>
2026-05-11 09:37:59 +02:00
bxdxnn 071d98c66b Render media captions formatting in the media viewer (#6729)
* Render media captions formatting in the media viewer

* Update screenshots

* Trigger actions

* Remove unused imports and reformat code

---------

Co-authored-by: ElementBot <android@element.io>
Co-authored-by: Jorge Martín <jorgem@element.io>
2026-05-08 16:30:32 +02:00
Jorge Martin Espinosa 4a4b3e07ef Use just the other user's avatar for DM details (#6738)
* Use just the other user's avatar for DM details. Remove `DmAvatars` component and other no longer needed data.

* Improve selection indicator by clipping the avatar to a circle shape

* Update screenshots

---------

Co-authored-by: ElementBot <android@element.io>
2026-05-08 11:17:30 +02:00
Benoit Marty 4497d7da36 Merge pull request #6744 from element-hq/feature/bma/improvePinUX
Improve pin code ux
2026-05-07 17:04:43 +02:00
Benoit Marty a7c9fedc8f Merge pull request #6740 from element-hq/feature/bma/uiSample
Introduce UI sample
2026-05-07 12:28:08 +02:00
Benoit Marty 0abb04ea62 Merge pull request #6708 from escix/patch-3
Fix 2 x Crash the app in Developer Options - Update AppDeveloperSettingsView.kt
2026-05-07 11:56:01 +02:00
Benoit Marty 022d21b097 Remove trailing spaces 2026-05-07 11:54:27 +02:00
Benoit Marty 80a46fdb3d Fix test 2026-05-07 11:52:21 +02:00
Jorge Martin Espinosa 866c8375b3 Make send event state UI easier to click (#6739)
* Make send event state UI easier to click

Make it so the whole timestamp view can be clicked

* Update screenshots

* Simplify `clickableModifier`

---------

Co-authored-by: ElementBot <android@element.io>
2026-05-07 11:11:07 +02:00
Benoit Marty ae044607c7 Add missing screenshot and improve UX when user enter wrong pin then correct pin. 2026-05-07 10:59:13 +02:00
Benoit Marty d18b529285 Ensure that remaining pin code attempts is never bigger than the value in the config. 2026-05-07 10:59:13 +02:00
Benoit Marty d558371798 Add test. 2026-05-07 10:59:12 +02:00
Benoit Marty 5269b9787e Fix quality issue. 2026-05-07 10:59:12 +02:00
Benoit Marty 44baa4a383 PinUnlockEvents -> PinUnlockEvent 2026-05-07 10:59:12 +02:00
Benoit Marty 668b03f8bc SetupPinEvents -> SetupPinEvent 2026-05-07 10:59:11 +02:00
Benoit Marty 90918cbb9d SetupBiometricEvents -> SetupBiometricEvent 2026-05-07 10:59:11 +02:00
Benoit Marty bc60512e10 LockScreenSettingsEvents -> LockScreenSettingsEvent 2026-05-07 10:59:11 +02:00
Benoit Marty 94d37c68d5 Use test extension. 2026-05-07 10:59:11 +02:00
Benoit Marty 8799dda471 Force sign out if PIN code store is corrupted. 2026-05-07 10:59:10 +02:00
Benoit Marty 61374bca4e Improve detection of configure PIN code. 2026-05-07 10:59:10 +02:00
Benoit Marty 2f45ca8835 Merge pull request #6682 from element-hq/feature/bma/customMasScheme
Add a way to tweak MAS url.
2026-05-07 10:51:32 +02:00
Benoit Marty 4948497be2 More replacements 2026-05-07 10:01:30 +02:00
Benoit Marty 0349162694 More replacements 2026-05-07 09:50:00 +02:00
Benoit Marty 223dd1f6b0 Fix invalid userId. 2026-05-06 21:59:59 +02:00
Jenna Vassar 4b479638a4 Keep jump to unread button position stationary 2026-05-06 11:55:52 -07:00
Benoit Marty 15162e4e32 Merge pull request #6726 from element-hq/feature/bma/renameVerificationMethod
Rename verification methods
2026-05-06 17:50:11 +02:00
Benoit Marty 2a694f6dfd Create PreviewData with sample of UGC used for preview.
Fix preview issue where username was used for room/avatar name.
2026-05-06 17:45:50 +02:00
Copilot 6ef9315468 Remove RoomDirectorySearch feature flag — always enable the feature (#6736)
* Remove RoomDirectorySearch feature flag, always enable the feature

Co-authored-by: stefanceriu <637564+stefanceriu@users.noreply.github.com>

* Apply ktlint formatting

Co-authored-by: jmartinesp <480955+jmartinesp@users.noreply.github.com>

* Update screenshots

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: stefanceriu <637564+stefanceriu@users.noreply.github.com>
Co-authored-by: jmartinesp <480955+jmartinesp@users.noreply.github.com>
Co-authored-by: ElementBot <android@element.io>
2026-05-06 16:05:19 +02:00
Jorge Martin Espinosa 9b91fabbd6 Use 'Report a problem' string instead of 'Report bug' (#6735)
* Use 'Report a problem' instead of 'Report bug'. This old string will be deleted soon.

* Update screenshots

---------

Co-authored-by: ElementBot <android@element.io>
2026-05-06 15:33:17 +02:00
renovate[bot] f4cf704335 Update dependency org.matrix.rustcomponents:sdk-android to v26.05.6 (#6734)
* Update dependency org.matrix.rustcomponents:sdk-android to v26.05.6

* Fix API breaks:

- Add `RoomMember.isServiceMember`.
- Add `beacon` and `beaconInfo` power levels.

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Jorge Martín <jorgem@element.io>
2026-05-06 15:31:52 +02:00
Jorge Martin Espinosa 34f001d22c Fix back button sometimes not working after exiting a thread (#6732)
When I reproduced the issue, it looked like the coroutine used to mark as read and then exit the room was canceled, leaving the `markingAsReadAndExiting` variable with `true` value and preventing the exit block from running again.
2026-05-06 14:35:08 +02:00
Jorge Martin Espinosa 70452842d3 Make icons in the Chat screen top bar 16dp (#6733)
* Make icons in the Chat screen top bar 16dp. This matches the designs in Figma.

* Fix the padding between the title and the icons

* Update screenshots

---------

Co-authored-by: ElementBot <android@element.io>
2026-05-06 09:16:13 +00:00
Jenna Vassar 784f5df426 Mark as read menu ui tweaks 2026-05-05 18:44:11 -07:00
Jenna Vassar 880a189617 Code cleanup, accessibility checks 2026-05-05 17:27:36 -07:00
Jenna Vassar aed149731b Add mark as read buttons 2026-05-05 17:26:57 -07:00
Jenna Vassar 51816e0281 Move jumpToUnreadButton to bottom, remove badge count 2026-05-05 13:04:37 -07:00
Kurban Sagitov a7711b7d52 Fix low width image message (#6692)
* fix low width image message

* added previews for narrow images

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

Co-authored-by: ElementBot <android@element.io>
2026-05-05 17:10:24 +02:00
Benoit Marty 3b3b4813b6 Detekt and ktlint are confused with Kotlin context... 2026-05-05 16:50:22 +02:00