mirror of
https://gitlab.opencode.de/bwi/bundesmessenger/clients/bundesmessenger-ios.git
synced 2026-04-25 02:52:45 +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:
@@ -30,6 +30,7 @@ final class RoomInfoCoordinator: NSObject, RoomInfoCoordinatorType {
|
||||
private let room: MXRoom
|
||||
private let parentSpaceId: String?
|
||||
private let initialSection: RoomInfoSection
|
||||
private let dismissOnCancel: Bool
|
||||
private weak var roomSettingsViewController: RoomSettingsViewController?
|
||||
|
||||
private lazy var segmentedViewController: SegmentedViewController = {
|
||||
@@ -103,6 +104,7 @@ final class RoomInfoCoordinator: NSObject, RoomInfoCoordinatorType {
|
||||
self.room = parameters.room
|
||||
self.parentSpaceId = parameters.parentSpaceId
|
||||
self.initialSection = parameters.initialSection
|
||||
self.dismissOnCancel = parameters.dismissOnCancel
|
||||
}
|
||||
|
||||
// MARK: - Public methods
|
||||
@@ -226,6 +228,22 @@ extension RoomInfoCoordinator: RoomNotificationSettingsCoordinatorDelegate {
|
||||
}
|
||||
|
||||
extension RoomInfoCoordinator: RoomSettingsViewControllerDelegate {
|
||||
func roomSettingsViewControllerDidCancel(_ controller: RoomSettingsViewController!) {
|
||||
if self.dismissOnCancel {
|
||||
self.navigationRouter.dismissModule(animated: true, completion: nil)
|
||||
} else {
|
||||
controller.withdrawViewController(animated: true) {}
|
||||
}
|
||||
}
|
||||
|
||||
func roomSettingsViewControllerDidComplete(_ controller: RoomSettingsViewController!) {
|
||||
if self.dismissOnCancel {
|
||||
self.navigationRouter.dismissModule(animated: true, completion: nil)
|
||||
} else {
|
||||
controller.withdrawViewController(animated: true) {}
|
||||
}
|
||||
}
|
||||
|
||||
func roomSettingsViewController(_ controller: RoomSettingsViewController!, didReplaceRoomWithReplacementId newRoomId: String!) {
|
||||
self.delegate?.roomInfoCoordinator(self, didReplaceRoomWithReplacementId: newRoomId)
|
||||
}
|
||||
|
||||
@@ -32,16 +32,22 @@ class RoomInfoCoordinatorParameters: NSObject {
|
||||
let room: MXRoom
|
||||
let parentSpaceId: String?
|
||||
let initialSection: RoomInfoSection
|
||||
let dismissOnCancel: Bool
|
||||
|
||||
init(session: MXSession, room: MXRoom, parentSpaceId: String?, initialSection: RoomInfoSection) {
|
||||
init(session: MXSession, room: MXRoom, parentSpaceId: String?, initialSection: RoomInfoSection, dismissOnCancel: Bool) {
|
||||
self.session = session
|
||||
self.room = room
|
||||
self.parentSpaceId = parentSpaceId
|
||||
self.initialSection = initialSection
|
||||
self.dismissOnCancel = dismissOnCancel
|
||||
super.init()
|
||||
}
|
||||
|
||||
convenience init(session: MXSession, room: MXRoom, parentSpaceId: String?) {
|
||||
self.init(session: session, room: room, parentSpaceId: parentSpaceId, initialSection: .none)
|
||||
self.init(session: session, room: room, parentSpaceId: parentSpaceId, initialSection: .none, dismissOnCancel: false)
|
||||
}
|
||||
|
||||
convenience init(session: MXSession, room: MXRoom, parentSpaceId: String?, initialSection: RoomInfoSection) {
|
||||
self.init(session: session, room: room, parentSpaceId: parentSpaceId, initialSection: initialSection, dismissOnCancel: false)
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user