Commit Graph

3355 Commits

Author SHA1 Message Date
Mauro Romito 7953cc44d7 Hide accesibility for decorative onboarding image 2025-06-10 10:33:24 +02:00
Doug e3884f903c Add a RoomScreenHook. 2025-06-10 10:28:18 +03:00
Stefan Ceriu 5233bbe6a6 Prevent the UI tests from crashing with an unconfigured ClientProxyMock timelineMediaVisibilityPublisher 2025-06-10 08:57:08 +03:00
Stefan Ceriu af97567edc Move ComposerToolbar view required dependencies to the view model and read them, similarly to the other views, through the context's view state. 2025-06-10 08:57:08 +03:00
Stefan Ceriu 4072031f4e Move composer specific designs to the composer toolbar. 2025-06-10 08:57:08 +03:00
Stefan Ceriu a4398b45fa Move timeline drag and drop handling to the recently introduced TimelineView. 2025-06-10 08:57:08 +03:00
Stefan Ceriu fcf50d469e Extract the disabled composer view into its own struct 2025-06-10 08:57:08 +03:00
Stefan Ceriu e86fdaacaf Extract the timeline scroll to bottom button into its own view. 2025-06-10 08:57:08 +03:00
Stefan Ceriu 952e4f86c2 Rename the RoomScreen's roomContext to plain context 2025-06-10 08:57:08 +03:00
Stefan Ceriu 21e07e164c Setup composer actions within threaded timelines. 2025-06-10 08:57:08 +03:00
Stefan Ceriu c3a9e5deaa Disable the threaded timeline composer when the room is read only. 2025-06-10 08:57:08 +03:00
Stefan Ceriu 9804be70eb Threaded timeline composer 2025-06-10 08:57:08 +03:00
Stefan Ceriu 93469ccea4 Have the media upload preview state transition to .room or .thread after being dismissed instead of back to the media upload picker. 2025-06-06 18:29:25 +03:00
Mauro Romito 4662eca9e2 added a TombstonedAvatarImage view to be used for the .tombstoned case 2025-06-06 10:49:29 +02:00
Mauro Romito 26a7d5ac82 pr suggestions 2025-06-06 10:49:29 +02:00
Mauro Romito 155b47e849 tombstoned and upgraded rooms implementation
added tests

tombstoned room avatar
2025-06-06 10:49:29 +02:00
Mauro b628f5d2c2 EC: Native switch for audio outputs/inputs and earpiece (#4136)
* EC: native switch for audio outputs/inputs and earpiece

also includes proximity sensor enabling when the earpiece is used.

* test disabling and re-enabling audio on audio change

* Revert "test disabling and re-enabling audio on audio change"

This reverts commit 907c791b8df7009214f5c164ecf8fe7d90a8addc.

* pr suggestions

* pr suggestion and small refactor of the widgetAction handler
2025-06-05 12:07:41 +00:00
Hugh Nimmo-Smith 0f518d3190 Support for experimental MSC4286 to not render external payment details (#4099)
Ref: https://github.com/matrix-org/matrix-spec-proposals/pull/4286
2025-06-03 12:22:14 +01:00
Stefan Ceriu 1f52546fc8 Adopt the new deduplicate room versions room list filter. 2025-05-30 16:40:15 +03:00
Doug 458c6aaa57 Adopt StateStoreViewModelV2 in the remaining settings screens. (#4158)
* Move the AuthenticationStartScreen into the Authentication directory.

* Commit the updated Sentry license.

No idea why they dropped the 2024 🤷‍♂️

* Use StateStoreViewModelV2 in BugReportScreen.

* Use StateStoreViewModelV2 in UserDetailsEditScreen.

* Use StateStoreViewModelV2 in NotificationSettingsScreen.

* Use StateStoreViewModelV2 in NotificationSettingsEditScreen.

* Use StateStoreViewModelV2 in LegalInformationScreen.

* Use StateStoreViewModelV2 in LogViewerScreen.

* Use StateStoreViewModelV2 in AnalyticsSettingsScreen.

* Rename AdvancedSettingsScreen directory.

* Use StateStoreViewModelV2 in EncryptionResetScreen.

* Use StateStoreViewModelV2 in EncryptionResetPasswordScreen.

* Use StateStoreViewModelV2 in SecureBackup…Screens.

* Use StateStoreViewModelV2 in LoginScreen.

Seems this one was ignored waiting on the fulfillment transitionValues implementation.

* Use StateStoreViewModelV2 in DeactivateAccountScreen.

* Move DeactivateAccountScreen into the Settings directory.
2025-05-30 12:24:56 +01:00
Stefan Ceriu 565ca3ab0b Setup the threaded timeline media preview action 2025-05-30 13:32:29 +03:00
Stefan Ceriu bc1f7ca646 Setup thread specific transitions and more reordering. 2025-05-30 13:32:29 +03:00
Stefan Ceriu dc76e8f7e7 Reorder room flow coordinator state machine transitions 2025-05-30 13:32:29 +03:00
Stefan Ceriu 4cb1758ac9 Be more leninent with handler transitions and only rely on the configuration of the state machine and its error handler. 2025-05-30 13:32:29 +03:00
Stefan Ceriu 1ff1813b01 Add thread specific route mappings 2025-05-30 13:32:29 +03:00
Stefan Ceriu 4cb8ae3ef6 Rearrange room flow coordinator state machine transitions 2025-05-30 13:32:29 +03:00
Stefan Ceriu 99c3cd7872 Move RoomFlowCoordinator state machine elements to a separate file. 2025-05-30 13:32:29 +03:00
Stefan Ceriu 210a0dba1a Setup action forwarding for threaded timelines. 2025-05-30 13:32:29 +03:00
Mauro aef91b5bc9 Handle media previews and invite avatars through the account data (#4142)
* added account data media display policy handling to NSE

* pr suggestions

* update compound

* code improvement
2025-05-28 19:51:34 +02:00
Mauro Romito 256292c5a9 updated ec and sentry 2025-05-28 17:08:23 +02:00
Doug 8a1a0ce1a4 Fix a couple of crashes on macOS from a missing environment object. (#4153) 2025-05-28 11:24:35 +01:00
Stefan Ceriu 182eee2867 Update the Enterprise submodule and make use of the newly added secrets configuration mechanism 2025-05-27 18:21:11 +03:00
Stefan Ceriu b3f0c31b9d Setup the new RustSDK sentry integration 2025-05-27 18:21:11 +03:00
Stefan Ceriu f9b3281172 Bump the SDK to v25.05.26-2 and update the breaking changes following the RoomListItem removal 2025-05-26 18:11:24 +03:00
Doug 542d382870 Add a developer option that hides notification alerts when a sound wouldn't be played.
Enabling this makes isNoisy behave like iMessage's Hide Alerts option.
2025-05-26 16:05:38 +03:00
Stefan Ceriu 4adfa7c98d Stop relying on the room list service and its items when retrieving room from the ClientProxy 2025-05-26 13:22:57 +03:00
Stefan Ceriu ccf437f5fb Remove the reliance on a room list item and the preview api from the BannedRoomProxy 2025-05-26 13:22:57 +03:00
Stefan Ceriu 154c44b701 Remove the RoomListItem from the JoinedRoomProxy 2025-05-26 13:22:57 +03:00
Stefan Ceriu 54a4656469 Apply the logic from the previous commit and the JoinRoomProxy to the KnockedRoomProxy 2025-05-26 13:22:57 +03:00
Stefan Ceriu ae42540ec0 Bump the RustSDK to v25.05.26 and handle breaking changes
- the new sentry integration will be handled in #4145
2025-05-26 13:22:57 +03:00
Stefan Ceriu a7c4a32285 Pass the full room into the invited room proxy and stop automatically retrieving the preview
- this will help speed up leaving invites but also stop fetching previews twice in the join room screen
2025-05-26 13:22:57 +03:00
Stefan Ceriu 29cfcb0b85 Better document the various protocols and classes involved in dealing with room timelines. 2025-05-23 16:08:18 +03:00
Stefan Ceriu 972084aaf7 Rename the TimelineProvider to TimelineItemProvider 2025-05-23 16:08:18 +03:00
Stefan Ceriu d058e7cd25 Introduce a new SwiftUI TimelineView layer (wrapping the representable) to hold all the timeline specific bindings that are currently duplicated throughout the screens a timeline is used. 2025-05-23 16:08:18 +03:00
Stefan Ceriu 250a7ed451 Move the pinned timeline in line with the other timeline creation methods and have it report errors just like the others 2025-05-22 18:14:55 +03:00
Stefan Ceriu 909aa086f2 Bump the SDK to 25.05.21 and adopt the new way of dealing with timelines and delegates.
The room list items no longer hold any timeline instances and they can now be created through the normal `room.timelineWithConfiguration` mechanism.
This also means that we can move the UTD hook away from the sync service and into the client itself but setting it is now fallible as it can only be set once.
2025-05-22 18:14:55 +03:00
Doug d76b76d041 Don't group timeline items if more than 5 minutes has passed. (#4138)
Matches the behaviour on web.
2025-05-21 10:34:22 +01:00
Stefan Ceriu de5dbdcdf8 Fix Type 'MXLog' has no member 'dev' CI error 2025-05-21 09:06:32 +03:00
Doug 5197e41928 Show an account provider picker on the server confirmation screen when required. (#4137)
* Add a picker mode to the ServerConfirmationScreen.

* Hook up the account provider picker in authentication the flow.

Simplify the authentication flow coordinator, removing the restricted state.

* UI/Snapshot tests.
2025-05-20 17:21:08 +01:00
Mauro Romito 18519c15dd integration tests: support for the bottom sheet 2025-05-20 17:39:12 +02:00