diff --git a/Riot/Modules/Spaces/SpaceMenu/SpaceMenuListItemViewData.swift b/Riot/Modules/Spaces/SpaceMenu/SpaceMenuListItemViewData.swift index bae8bf13f..6f8b7378f 100644 --- a/Riot/Modules/Spaces/SpaceMenu/SpaceMenuListItemViewData.swift +++ b/Riot/Modules/Spaces/SpaceMenu/SpaceMenuListItemViewData.swift @@ -16,8 +16,8 @@ import Foundation -/// Possible action ID related to a `SpaceMenuListViewCell` view data -enum SpaceMenuListItemActionId { +/// Possible action related to a `SpaceMenuListViewCell` view data +enum SpaceMenuListItemAction { case showAllRoomsInHomeSpace case exploreSpaceMembers case exploreSpaceRooms @@ -27,7 +27,7 @@ enum SpaceMenuListItemActionId { /// Style of the `SpaceMenuListViewCell` enum SpaceMenuListItemStyle { case normal - case boolean + case toggle case destructive } @@ -38,7 +38,7 @@ protocol SpaceMenuListItemViewDataDelegate: AnyObject { /// `SpaceMenuListViewCell` view data class SpaceMenuListItemViewData { - let actionId: SpaceMenuListItemActionId + let action: SpaceMenuListItemAction let style: SpaceMenuListItemStyle let title: String? let icon: UIImage? @@ -50,8 +50,8 @@ class SpaceMenuListItemViewData { } weak var delegate: SpaceMenuListItemViewDataDelegate? - init(actionId: SpaceMenuListItemActionId, style: SpaceMenuListItemStyle, title: String?, icon: UIImage?, value: Any?) { - self.actionId = actionId + init(action: SpaceMenuListItemAction, style: SpaceMenuListItemStyle, title: String?, icon: UIImage?, value: Any?) { + self.action = action self.style = style self.title = title self.icon = icon diff --git a/Riot/Modules/Spaces/SpaceMenu/SpaceMenuPresenter.swift b/Riot/Modules/Spaces/SpaceMenu/SpaceMenuPresenter.swift index dfc755675..1949e03fd 100644 --- a/Riot/Modules/Spaces/SpaceMenu/SpaceMenuPresenter.swift +++ b/Riot/Modules/Spaces/SpaceMenu/SpaceMenuPresenter.swift @@ -101,15 +101,15 @@ extension SpaceMenuPresenter: SpaceMenuModelViewModelCoordinatorDelegate { self.dismiss(animated: true, completion: nil) } - func spaceMenuViewModel(_ viewModel: SpaceMenuViewModelType, didSelectItemWithId itemId: SpaceMenuListItemActionId) { - switch itemId { + func spaceMenuViewModel(_ viewModel: SpaceMenuViewModelType, didSelectItemWith action: SpaceMenuListItemAction) { + switch action { case .leaveSpace: break case .exploreSpaceMembers: self.delegate?.spaceMenuPresenter(self, didCompleteWith: .exploreMembers, forSpaceWithId: self.spaceId, with: self.session) case .exploreSpaceRooms: self.delegate?.spaceMenuPresenter(self, didCompleteWith: .exploreRooms, forSpaceWithId: self.spaceId, with: self.session) default: - MXLog.error("[SpaceMenuPresenter] spaceListViewModel didSelectItemWithId: invalid itemId \(itemId)") + MXLog.error("[SpaceMenuPresenter] spaceListViewModel didSelectItem: invalid action \(action)") } } } diff --git a/Riot/Modules/Spaces/SpaceMenu/SpaceMenuViewController.swift b/Riot/Modules/Spaces/SpaceMenu/SpaceMenuViewController.swift index 32bc9a76f..7b9bebea4 100644 --- a/Riot/Modules/Spaces/SpaceMenu/SpaceMenuViewController.swift +++ b/Riot/Modules/Spaces/SpaceMenu/SpaceMenuViewController.swift @@ -248,7 +248,7 @@ extension SpaceMenuViewController: UITableViewDataSource { func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell { let viewData = viewModel.menuItems[indexPath.row] - let cell = viewData.style == .boolean ? tableView.dequeueReusableCell(for: indexPath, cellType: SpaceMenuSwitchViewCell.self) : + let cell = viewData.style == .toggle ? tableView.dequeueReusableCell(for: indexPath, cellType: SpaceMenuSwitchViewCell.self) : tableView.dequeueReusableCell(for: indexPath, cellType: SpaceMenuListViewCell.self) if let cell = cell as? SpaceMenuCell { diff --git a/Riot/Modules/Spaces/SpaceMenu/SpaceMenuViewModel.swift b/Riot/Modules/Spaces/SpaceMenu/SpaceMenuViewModel.swift index 1150ff155..39e38934d 100644 --- a/Riot/Modules/Spaces/SpaceMenu/SpaceMenuViewModel.swift +++ b/Riot/Modules/Spaces/SpaceMenu/SpaceMenuViewModel.swift @@ -25,9 +25,9 @@ class SpaceMenuViewModel: SpaceMenuViewModelType { weak var viewDelegate: SpaceMenuViewModelViewDelegate? private let spaceMenuItems: [SpaceMenuListItemViewData] = [ - SpaceMenuListItemViewData(actionId: .exploreSpaceMembers, style: .normal, title: VectorL10n.roomDetailsPeople, icon: Asset.Images.spaceMenuMembers.image, value: nil), - SpaceMenuListItemViewData(actionId: .exploreSpaceRooms, style: .normal, title: VectorL10n.spacesExploreRooms, icon: Asset.Images.spaceMenuRooms.image, value: nil), - SpaceMenuListItemViewData(actionId: .leaveSpace, style: .destructive, title: VectorL10n.leave, icon: Asset.Images.spaceMenuLeave.image, value: nil) + SpaceMenuListItemViewData(action: .exploreSpaceMembers, style: .normal, title: VectorL10n.roomDetailsPeople, icon: Asset.Images.spaceMenuMembers.image, value: nil), + SpaceMenuListItemViewData(action: .exploreSpaceRooms, style: .normal, title: VectorL10n.spacesExploreRooms, icon: Asset.Images.spaceMenuRooms.image, value: nil), + SpaceMenuListItemViewData(action: .leaveSpace, style: .destructive, title: VectorL10n.leave, icon: Asset.Images.spaceMenuLeave.image, value: nil) ] var menuItems: [SpaceMenuListItemViewData] = [] @@ -45,7 +45,7 @@ class SpaceMenuViewModel: SpaceMenuViewModelType { self.menuItems = spaceMenuItems } else { self.menuItems = [ - SpaceMenuListItemViewData(actionId: .showAllRoomsInHomeSpace, style: .boolean, title: VectorL10n.spaceHomeShowAllRooms, icon: nil, value: MXKAppSettings.standard().showAllRoomsInHomeSpace) + SpaceMenuListItemViewData(action: .showAllRoomsInHomeSpace, style: .toggle, title: VectorL10n.spaceHomeShowAllRooms, icon: nil, value: MXKAppSettings.standard().showAllRoomsInHomeSpace) ] } } @@ -57,7 +57,7 @@ class SpaceMenuViewModel: SpaceMenuViewModelType { case .dismiss: self.coordinatorDelegate?.spaceMenuViewModelDidDismiss(self) case .selectRow(at: let indexPath): - self.processAction(with: menuItems[indexPath.row].actionId, at: indexPath) + self.processAction(with: menuItems[indexPath.row].action, at: indexPath) case .leaveSpaceAndKeepRooms: self.leaveSpaceAndKeepRooms() case .leaveSpaceAndLeaveRooms: @@ -67,8 +67,8 @@ class SpaceMenuViewModel: SpaceMenuViewModelType { // MARK: - Private - private func processAction(with actionId: SpaceMenuListItemActionId, at indexPath: IndexPath) { - switch actionId { + private func processAction(with action: SpaceMenuListItemAction, at indexPath: IndexPath) { + switch action { case .showAllRoomsInHomeSpace: MXKAppSettings.standard().showAllRoomsInHomeSpace = !MXKAppSettings.standard().showAllRoomsInHomeSpace self.menuItems[indexPath.row].value = MXKAppSettings.standard().showAllRoomsInHomeSpace @@ -76,7 +76,7 @@ class SpaceMenuViewModel: SpaceMenuViewModelType { case .leaveSpace: self.leaveSpace() default: - self.coordinatorDelegate?.spaceMenuViewModel(self, didSelectItemWithId: actionId) + self.coordinatorDelegate?.spaceMenuViewModel(self, didSelectItemWith: action) } } diff --git a/Riot/Modules/Spaces/SpaceMenu/SpaceMenuViewModelType.swift b/Riot/Modules/Spaces/SpaceMenu/SpaceMenuViewModelType.swift index dd55ebb26..7f9511f7b 100644 --- a/Riot/Modules/Spaces/SpaceMenu/SpaceMenuViewModelType.swift +++ b/Riot/Modules/Spaces/SpaceMenu/SpaceMenuViewModelType.swift @@ -22,7 +22,7 @@ protocol SpaceMenuViewModelViewDelegate: AnyObject { protocol SpaceMenuModelViewModelCoordinatorDelegate: AnyObject { func spaceMenuViewModelDidDismiss(_ viewModel: SpaceMenuViewModelType) - func spaceMenuViewModel(_ viewModel: SpaceMenuViewModelType, didSelectItemWithId itemId: SpaceMenuListItemActionId) + func spaceMenuViewModel(_ viewModel: SpaceMenuViewModelType, didSelectItemWith action: SpaceMenuListItemAction) } /// Protocol describing the view model used by `SpaceMenuViewController`