mirror of
https://github.com/Novaloop-AG/element-x-ios.git
synced 2026-11-06 12:28:29 +00:00
fix for leaving a space with no joined rooms showing the incorrect subtitle
This commit is contained in:
@@ -22,14 +22,18 @@ extension LeaveSpaceHandleSDKMock {
|
|||||||
}
|
}
|
||||||
|
|
||||||
extension [LeaveSpaceRoom] {
|
extension [LeaveSpaceRoom] {
|
||||||
static func mockLastSpaceAdmin(spaceRoomProxy: SpaceRoomProxyProtocol) -> [LeaveSpaceRoom] {
|
static func mockRoomsWithSpace(spaceRoomProxy: SpaceRoomProxyProtocol, isLastAdmin: Bool) -> [LeaveSpaceRoom] {
|
||||||
mockRooms + [LeaveSpaceRoom(spaceRoom: SpaceRoom(id: spaceRoomProxy.id,
|
mockRooms + mockSingleSpace(spaceRoomProxy: spaceRoomProxy, isLastAdmin: isLastAdmin)
|
||||||
name: spaceRoomProxy.name,
|
}
|
||||||
avatarURL: spaceRoomProxy.avatarURL,
|
|
||||||
isSpace: true,
|
static func mockSingleSpace(spaceRoomProxy: SpaceRoomProxyProtocol, isLastAdmin: Bool) -> [LeaveSpaceRoom] {
|
||||||
memberCount: UInt64(spaceRoomProxy.joinedMembersCount),
|
[LeaveSpaceRoom(spaceRoom: SpaceRoom(id: spaceRoomProxy.id,
|
||||||
joinRule: spaceRoomProxy.joinRule),
|
name: spaceRoomProxy.name,
|
||||||
isLastAdmin: true)]
|
avatarURL: spaceRoomProxy.avatarURL,
|
||||||
|
isSpace: true,
|
||||||
|
memberCount: UInt64(spaceRoomProxy.joinedMembersCount),
|
||||||
|
joinRule: spaceRoomProxy.joinRule),
|
||||||
|
isLastAdmin: isLastAdmin)]
|
||||||
}
|
}
|
||||||
|
|
||||||
static var mockAdminRooms: [LeaveSpaceRoom] {
|
static var mockAdminRooms: [LeaveSpaceRoom] {
|
||||||
|
|||||||
@@ -148,8 +148,8 @@ struct LeaveSpaceView_Previews: PreviewProvider, TestablePreview {
|
|||||||
let rooms: [LeaveSpaceRoom] = switch mode {
|
let rooms: [LeaveSpaceRoom] = switch mode {
|
||||||
case .manyRooms: .mockRooms
|
case .manyRooms: .mockRooms
|
||||||
case .onlyAdminRooms: .mockAdminRooms
|
case .onlyAdminRooms: .mockAdminRooms
|
||||||
case .noRooms: []
|
case .noRooms: .mockSingleSpace(spaceRoomProxy: spaceRoomProxy, isLastAdmin: false)
|
||||||
case .lastSpaceAdmin: .mockLastSpaceAdmin(spaceRoomProxy: spaceRoomProxy)
|
case .lastSpaceAdmin: .mockRoomsWithSpace(spaceRoomProxy: spaceRoomProxy, isLastAdmin: true)
|
||||||
}
|
}
|
||||||
|
|
||||||
let leaveHandle = LeaveSpaceHandleProxy(spaceID: spaceRoomProxy.id,
|
let leaveHandle = LeaveSpaceHandleProxy(spaceID: spaceRoomProxy.id,
|
||||||
|
|||||||
@@ -42,9 +42,9 @@ final class LeaveSpaceHandleProxy {
|
|||||||
|
|
||||||
mode = if space?.isLastAdmin == true {
|
mode = if space?.isLastAdmin == true {
|
||||||
.lastSpaceAdmin
|
.lastSpaceAdmin
|
||||||
} else if rooms.isEmpty {
|
} else if self.rooms.isEmpty {
|
||||||
.noRooms
|
.noRooms
|
||||||
} else if rooms.count(where: { !$0.isLastAdmin }) == 0 {
|
} else if self.rooms.count(where: { !$0.isLastAdmin }) == 0 {
|
||||||
.onlyAdminRooms
|
.onlyAdminRooms
|
||||||
} else {
|
} else {
|
||||||
.manyRooms
|
.manyRooms
|
||||||
|
|||||||
Reference in New Issue
Block a user