mirror of
https://github.com/Novaloop-AG/element-x-ios.git
synced 2026-11-03 06:55:59 +00:00
Space filters (#4977)
* Add support for SpaceFilters on the SpaceServiceProxy level and a screen that renders them * Add aliases to a couple of space room mocks * Update translations and related snapshots * Add a feature flag for space filters * Add a new room summary provider filter that takes a list of room identifiers next to the normal state filters This will take the SpaceFilter's descendants and combine it with the normal filters to reduce the rooms shown * Add a new space filter button to the home screen and link it to the SpaceFiltersScreen and the actual RoomSummaryProvider room list filters * Bump the RustSDK to v26.01.20-2 for SpaceFilter support. * Add a cancellation button to the space filters screen * Make the filter presentation mode liquidy, move the sheet to within the home screen. * Address PR comments
This commit is contained in:
@@ -684,7 +684,7 @@ class ChatsTabFlowCoordinator: FlowCoordinatorProtocol {
|
||||
let hostingController = UIHostingController(rootView: coordinator.toPresentable())
|
||||
hostingController.view.backgroundColor = .clear
|
||||
flowParameters.windowManager.globalSearchWindow.rootViewController = hostingController
|
||||
|
||||
|
||||
flowParameters.windowManager.showGlobalSearch()
|
||||
}
|
||||
|
||||
|
||||
@@ -23,7 +23,7 @@ class ChatsTabFlowCoordinatorStateMachine {
|
||||
|
||||
/// Showing the home screen. The `roomListSelectedRoomID` represents the timeline shown on the detail panel (if any)
|
||||
case roomList(detailState: DetailState?)
|
||||
|
||||
|
||||
/// Showing the feedback screen.
|
||||
case feedbackScreen(detailState: DetailState?)
|
||||
|
||||
@@ -52,7 +52,7 @@ class ChatsTabFlowCoordinatorStateMachine {
|
||||
|
||||
case declineAndBlockUserScreen(detailState: DetailState?)
|
||||
|
||||
/// The selected room ID from the state if available.
|
||||
/// The state of the currently selected room
|
||||
var detailState: DetailState? {
|
||||
switch self {
|
||||
case .initial, .userProfileScreen, .shareExtensionRoomList:
|
||||
@@ -157,7 +157,7 @@ class ChatsTabFlowCoordinatorStateMachine {
|
||||
case (.roomList(let detailState), .deselectRoom):
|
||||
// Ignore the flow's dismissal if it has already been replaced with a space.
|
||||
return detailState == .space ? nil : .roomList(detailState: nil)
|
||||
|
||||
|
||||
case (.roomList, .startSpaceFlow):
|
||||
return .roomList(detailState: .space)
|
||||
case (.roomList, .finishedSpaceFlow):
|
||||
|
||||
Reference in New Issue
Block a user