mirror of
https://github.com/Novaloop-AG/element-x-ios.git
synced 2026-11-02 21:33:26 +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:
@@ -43,6 +43,7 @@ enum HomeScreenViewAction {
|
||||
case dismissNewSoundBanner
|
||||
case updateVisibleItemRange(Range<Int>)
|
||||
case globalSearch
|
||||
case spaceFilters
|
||||
case markRoomAsUnread(roomIdentifier: String)
|
||||
case markRoomAsRead(roomIdentifier: String)
|
||||
case markRoomAsFavourite(roomIdentifier: String, isFavourite: Bool)
|
||||
@@ -109,6 +110,10 @@ struct HomeScreenViewState: BindableState {
|
||||
|
||||
var reportRoomEnabled = false
|
||||
|
||||
var spaceFiltersEnabled = false
|
||||
|
||||
var selectedSpaceFilter: SpaceServiceFilter?
|
||||
|
||||
var visibleRooms: [HomeScreenRoom] {
|
||||
if roomListMode == .skeletons {
|
||||
return placeholderRooms
|
||||
@@ -150,6 +155,8 @@ struct HomeScreenViewStateBindings {
|
||||
|
||||
var alertInfo: AlertInfo<UUID>?
|
||||
var leaveRoomAlertItem: LeaveRoomAlertItem?
|
||||
|
||||
var spaceFiltersViewModel: ChatsSpaceFiltersScreenViewModel?
|
||||
}
|
||||
|
||||
struct HomeScreenRoom: Identifiable, Equatable {
|
||||
|
||||
Reference in New Issue
Block a user