mirror of
https://github.com/Novaloop-AG/element-x-ios.git
synced 2026-11-03 06:31:27 +00:00
Fixes #2414 - Move member loading to the room member detail screen, avoid blocking the whole application
This commit is contained in:
@@ -57,6 +57,10 @@ final class RoomMembersListScreenCoordinator: CoordinatorProtocol {
|
||||
}
|
||||
.store(in: &cancellables)
|
||||
}
|
||||
|
||||
func stop() {
|
||||
viewModel.stop()
|
||||
}
|
||||
|
||||
func toPresentable() -> AnyView {
|
||||
AnyView(RoomMembersListScreen(context: viewModel.context))
|
||||
|
||||
@@ -58,6 +58,10 @@ class RoomMembersListScreenViewModel: RoomMembersListScreenViewModelType, RoomMe
|
||||
}
|
||||
}
|
||||
|
||||
func stop() {
|
||||
hideLoader()
|
||||
}
|
||||
|
||||
// MARK: - Private
|
||||
|
||||
private func setupMembers() {
|
||||
@@ -120,7 +124,11 @@ class RoomMembersListScreenViewModel: RoomMembersListScreenViewModelType, RoomMe
|
||||
private let userIndicatorID = UUID().uuidString
|
||||
|
||||
private func showLoader() {
|
||||
userIndicatorController.submitIndicator(UserIndicator(id: userIndicatorID, type: .modal, title: L10n.commonLoading, persistent: true), delay: .milliseconds(200))
|
||||
userIndicatorController.submitIndicator(UserIndicator(id: userIndicatorID,
|
||||
type: .modal(progress: .indeterminate, interactiveDismissDisabled: false, allowsInteraction: true),
|
||||
title: L10n.commonLoading,
|
||||
persistent: true),
|
||||
delay: .milliseconds(200))
|
||||
}
|
||||
|
||||
private func hideLoader() {
|
||||
|
||||
+2
@@ -20,4 +20,6 @@ import Combine
|
||||
protocol RoomMembersListScreenViewModelProtocol {
|
||||
var actions: AnyPublisher<RoomMembersListScreenViewModelAction, Never> { get }
|
||||
var context: RoomMembersListScreenViewModelType.Context { get }
|
||||
|
||||
func stop()
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user