- expose the full RoomPreview and RoomMembershipDetails through their own proxies
- implement standard mocks for all the different combinations
- converge on a single room info provider
- rebuild all the previews
- prioritise the preview data over the room one.
* handling the history visibility flag
* better logic to handle visibility
* better handling of the visibility options state
* added some copies, and the public room directory
visibility state
* completed the UI
added also the preview tests
* improved the handling of the directory visibility
* added the space users case
and improved handling of the access -> vsibility reaction. Also added a simple error handling for the public directory toggle
* added the edit room address view
but is missing its full implementation
* implement the UI for the edit room address screen
* implemented error checking
when editing the address
* updated preview tests and improved code
* typo fix
* Fix various issues after rebasing.
* Fix build errors and broken snapshot tests
* Adopt latest room privacy and canonical alias setting APIs
* Add support for creating and editing the room's alias.
* Add support for saving room privacy setting changes.
* Fix room alias screen snapshot tests following recent changes.
---------
Co-authored-by: Stefan Ceriu <stefanc@matrix.org>
* WIP RequestToJoin struct
* implemented the logic to display the cells
* knock request banner accept flow
* mark all knocks as seen implemented
* details logic
* implemented accept, decline and ban in the list
* added a loader and modified the stacked view
of the banner
* pr suggestions
* updated naming and loading strings
* added the initial loading state
improved code and the tests
* updated a string that has changed
* code improvement
* tests for the room screen view model
* room details tests
and improved the knock requests tests for the room screen
* knock requests list tests
* added error state alerts with retry
* struct has been renamed on the sdk
so I renamed it also on the app side
* update SDK
* updated the order of the room details
also...
- removed the bloom bg from the join room screen
- now DMs do not necessarily need to be encrypted rooms
- changed bg of the knock banner
* removed unnecessary disabled
* updated join room screen tests
* Introduce a `MediaEventsTimelineFlowCoordinator`
* Update SDK API and architecture
* Add a feature flag, add translations
* Move the media events timeline presentation under the room flow coordinator state machine
* Rename `TimelineViewState.timelineViewState` of type `TimelineState` to `timelineState`
* Enabled SwiftLint's `trailing_closure` rule and fix the warnings.
* Setup simple share extension
* Switch the app url scheme to be the full bundle identifier
* Setup a share extension that show a SwiftUI view, uses rust tracing and redirects to the hosting aplication
* Move media as json through the custom scheme into the main app and deep link into the media upload preview screen
* Fix message forwarding and global search screen room summary provider filtering.
* Tweak the message forwarding and global search screen designs.
* Add a room selection screen to use after receiving a share request from the share extension
* Fix share extension entitlements
* Share the temporary directory between the main app and the extensions; rename the caches one.
* Remove the no longer needed notification avatar flipping fix.
* Extract the placeholder avatar image generator from the NSE
* Nest `AvatarSize` within the new `Avatars` enum
* Donate an `INSendMessageIntent` to the system every time we send a message so they appear as share suggestions
* Support suggestions in the share extension itself
* Improve sharing animations and fix presentation when room already on the stack
* Clear all routes when sharing without a preselected room.
* Fix broken unit tests
* Various initial tweaks following code review.
* Correctly clean up and dismiss the share extension for all paths.
* Move the share extension path to a constants enum
* Rename UserSessionFlowCoordinator specific share extension states and events
* Add UserSession and Room flow coordinator share route tests
* Tweak the share extension logic.
* Adopt new reaction toggling API introduced in matrix-org/matrix-rust-sdk/pull/4127
* Adopt the changes introduced in matrix-org/matrix-rust-sdk/pull/4111: use the new `TimelineUniqueId` type instead of `String` for unique timeline identifiers.
* Bump the RustSDK to v1.0.58.
* Fix unit tests
* Remove room list range deduplication and allow subscribing to rooms when then update to come into the visible range.
* Fixes#3088 - Update subscriptions if visible range rooms change without the range itself changing
- we switched from range based subscribing with duplicate suppression to id based, but ids can change without ranges changing
- the all rooms list fetches at least 1 event per rooms and can cause rooms to come in and out of the visible range without user interaction
* Remove incorrect message send call and fix typo.
* Add overlay coordinator presentation to the NavigationRootCoordinator.
* Remove GenericCallLinkCoordinator, merging it into CallScreen.
This will allow for picture in picture on call links when available.
* Add inviter property to RoomProxyProtocol.
* Extract the room cell inviter label into it's own view.
* Use the new RoomInviterLabel in the JoinRoomScreen.
* Fix bug with invite to a public room.