mirror of
https://gitlab.opencode.de/bwi/bundesmessenger/clients/bundesmessenger-ios.git
synced 2026-05-02 06:06:57 +02:00
SP4: space settings (#5730)
* SP4: Space Settings - Space settings screen implemented - No space upgrade available as per Element web - Need more insights for the space address field - Added settings live update - Added local alias implementation
This commit is contained in:
@@ -24,6 +24,7 @@ struct SpaceMemberDetailCoordinatorParameters {
|
||||
let member: MXRoomMember
|
||||
let session: MXSession
|
||||
let spaceId: String
|
||||
let showCancelMenuItem: Bool
|
||||
}
|
||||
|
||||
final class SpaceMemberDetailCoordinator: NSObject, SpaceMemberDetailCoordinatorType {
|
||||
@@ -49,7 +50,7 @@ final class SpaceMemberDetailCoordinator: NSObject, SpaceMemberDetailCoordinator
|
||||
init(parameters: SpaceMemberDetailCoordinatorParameters) {
|
||||
self.parameters = parameters
|
||||
|
||||
let spaceMemberDetailViewModel = SpaceMemberDetailViewModel(userSessionsService: parameters.userSessionsService, session: parameters.session, member: parameters.member, spaceId: parameters.spaceId)
|
||||
let spaceMemberDetailViewModel = SpaceMemberDetailViewModel(userSessionsService: parameters.userSessionsService, session: parameters.session, member: parameters.member, spaceId: parameters.spaceId, showCancelMenuItem: parameters.showCancelMenuItem)
|
||||
let spaceMemberDetailViewController = SpaceMemberDetailViewController.instantiate(with: spaceMemberDetailViewModel)
|
||||
spaceMemberDetailViewController.enableMention = true
|
||||
spaceMemberDetailViewController.enableVoipCall = false
|
||||
|
||||
@@ -106,11 +106,13 @@ final class SpaceMemberDetailViewController: RoomMemberDetailsViewController {
|
||||
}
|
||||
|
||||
private func setupViews() {
|
||||
let cancelBarButtonItem = MXKBarButtonItem(title: VectorL10n.cancel, style: .plain) { [weak self] in
|
||||
self?.cancelButtonAction()
|
||||
if viewModel.showCancelMenuItem {
|
||||
let cancelBarButtonItem = MXKBarButtonItem(title: VectorL10n.cancel, style: .plain) { [weak self] in
|
||||
self?.cancelButtonAction()
|
||||
}
|
||||
|
||||
self.navigationItem.rightBarButtonItem = cancelBarButtonItem
|
||||
}
|
||||
|
||||
self.navigationItem.rightBarButtonItem = cancelBarButtonItem
|
||||
}
|
||||
|
||||
private func render(viewState: SpaceMemberDetailViewState) {
|
||||
|
||||
@@ -29,6 +29,7 @@ final class SpaceMemberDetailViewModel: NSObject, SpaceMemberDetailViewModelType
|
||||
private let member: MXRoomMember
|
||||
private let spaceId: String
|
||||
private var space: MXSpace?
|
||||
private(set) var showCancelMenuItem: Bool
|
||||
|
||||
private var currentOperation: MXHTTPOperation?
|
||||
|
||||
@@ -39,11 +40,12 @@ final class SpaceMemberDetailViewModel: NSObject, SpaceMemberDetailViewModelType
|
||||
|
||||
// MARK: - Setup
|
||||
|
||||
init(userSessionsService: UserSessionsService, session: MXSession, member: MXRoomMember, spaceId: String) {
|
||||
init(userSessionsService: UserSessionsService, session: MXSession, member: MXRoomMember, spaceId: String, showCancelMenuItem: Bool) {
|
||||
self.userSessionsService = userSessionsService
|
||||
self.session = session
|
||||
self.member = member
|
||||
self.spaceId = spaceId
|
||||
self.showCancelMenuItem = showCancelMenuItem
|
||||
}
|
||||
|
||||
deinit {
|
||||
|
||||
@@ -32,6 +32,7 @@ protocol SpaceMemberDetailViewModelType {
|
||||
|
||||
var viewDelegate: SpaceMemberDetailViewModelViewDelegate? { get set }
|
||||
var coordinatorDelegate: SpaceMemberDetailViewModelCoordinatorDelegate? { get set }
|
||||
var showCancelMenuItem: Bool { get }
|
||||
|
||||
func process(viewAction: SpaceMemberDetailViewAction)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user