diff --git a/Riot/Modules/Threads/ThreadList/ThreadListCoordinator.swift b/Riot/Modules/Threads/ThreadList/ThreadListCoordinator.swift index a870d8808..618d967c5 100644 --- a/Riot/Modules/Threads/ThreadList/ThreadListCoordinator.swift +++ b/Riot/Modules/Threads/ThreadList/ThreadListCoordinator.swift @@ -65,11 +65,11 @@ extension ThreadListCoordinator: ThreadListViewModelCoordinatorDelegate { self.delegate?.threadListCoordinatorDidLoadThreads(self) } - func threadListViewModelDidSelectThread(_ viewModel: ThreadListViewModelProtocol, thread: MXThread) { + func threadListViewModelDidSelectThread(_ viewModel: ThreadListViewModelProtocol, thread: MXThreadProtocol) { self.delegate?.threadListCoordinatorDidSelectThread(self, thread: thread) } - func threadListViewModelDidSelectThreadViewInRoom(_ viewModel: ThreadListViewModelProtocol, thread: MXThread) { + func threadListViewModelDidSelectThreadViewInRoom(_ viewModel: ThreadListViewModelProtocol, thread: MXThreadProtocol) { self.delegate?.threadListCoordinatorDidSelectRoom(self, roomId: thread.roomId, eventId: thread.id) } diff --git a/Riot/Modules/Threads/ThreadList/ThreadListCoordinatorProtocol.swift b/Riot/Modules/Threads/ThreadList/ThreadListCoordinatorProtocol.swift index e23505480..fb9b02bee 100644 --- a/Riot/Modules/Threads/ThreadList/ThreadListCoordinatorProtocol.swift +++ b/Riot/Modules/Threads/ThreadList/ThreadListCoordinatorProtocol.swift @@ -20,7 +20,7 @@ import Foundation protocol ThreadListCoordinatorDelegate: AnyObject { func threadListCoordinatorDidLoadThreads(_ coordinator: ThreadListCoordinatorProtocol) - func threadListCoordinatorDidSelectThread(_ coordinator: ThreadListCoordinatorProtocol, thread: MXThread) + func threadListCoordinatorDidSelectThread(_ coordinator: ThreadListCoordinatorProtocol, thread: MXThreadProtocol) func threadListCoordinatorDidSelectRoom(_ coordinator: ThreadListCoordinatorProtocol, roomId: String, eventId: String) func threadListCoordinatorDidCancel(_ coordinator: ThreadListCoordinatorProtocol) } diff --git a/Riot/Modules/Threads/ThreadList/ThreadListViewModel.swift b/Riot/Modules/Threads/ThreadList/ThreadListViewModel.swift index 381c19f52..01d42bf47 100644 --- a/Riot/Modules/Threads/ThreadList/ThreadListViewModel.swift +++ b/Riot/Modules/Threads/ThreadList/ThreadListViewModel.swift @@ -26,12 +26,12 @@ final class ThreadListViewModel: ThreadListViewModelProtocol { private let session: MXSession private let roomId: String - private var threads: [MXThread] = [] + private var threads: [MXThreadProtocol] = [] private var eventFormatter: MXKEventFormatter? private var roomState: MXRoomState? private var currentOperation: MXHTTPOperation? - private var longPressedThread: MXThread? + private var longPressedThread: MXThreadProtocol? // MARK: Public @@ -144,7 +144,7 @@ final class ThreadListViewModel: ThreadListViewModelProtocol { // MARK: - Private - private func model(forThread thread: MXThread) -> ThreadModel { + private func model(forThread thread: MXThreadProtocol) -> ThreadModel { let rootAvatarViewData: AvatarViewData? let rootMessageSender: MXUser? let lastAvatarViewData: AvatarViewData? @@ -199,7 +199,7 @@ final class ThreadListViewModel: ThreadListViewModelProtocol { notificationStatus: notificationStatus) } - private func rootMessageText(forThread thread: MXThread) -> NSAttributedString? { + private func rootMessageText(forThread thread: MXThreadProtocol) -> NSAttributedString? { guard let eventFormatter = eventFormatter else { return nil } @@ -229,7 +229,7 @@ final class ThreadListViewModel: ThreadListViewModelProtocol { error: formatterError) } - private func lastMessageTextAndTime(forThread thread: MXThread) -> (NSAttributedString?, String?) { + private func lastMessageTextAndTime(forThread thread: MXThreadProtocol) -> (NSAttributedString?, String?) { guard let eventFormatter = eventFormatter else { return (nil, nil) } @@ -323,7 +323,7 @@ final class ThreadListViewModel: ThreadListViewModelProtocol { private func actionShare() { guard let thread = longPressedThread, - let index = threads.firstIndex(of: thread) else { + let index = threads.firstIndex(where: { thread.id == $0.id }) else { return } if let permalink = MXTools.permalink(toEvent: thread.id, inRoom: thread.roomId), diff --git a/Riot/Modules/Threads/ThreadList/ThreadListViewModelProtocol.swift b/Riot/Modules/Threads/ThreadList/ThreadListViewModelProtocol.swift index 3720f0c35..09db9be20 100644 --- a/Riot/Modules/Threads/ThreadList/ThreadListViewModelProtocol.swift +++ b/Riot/Modules/Threads/ThreadList/ThreadListViewModelProtocol.swift @@ -24,8 +24,8 @@ protocol ThreadListViewModelViewDelegate: AnyObject { protocol ThreadListViewModelCoordinatorDelegate: AnyObject { func threadListViewModelDidLoadThreads(_ viewModel: ThreadListViewModelProtocol) - func threadListViewModelDidSelectThread(_ viewModel: ThreadListViewModelProtocol, thread: MXThread) - func threadListViewModelDidSelectThreadViewInRoom(_ viewModel: ThreadListViewModelProtocol, thread: MXThread) + func threadListViewModelDidSelectThread(_ viewModel: ThreadListViewModelProtocol, thread: MXThreadProtocol) + func threadListViewModelDidSelectThreadViewInRoom(_ viewModel: ThreadListViewModelProtocol, thread: MXThreadProtocol) func threadListViewModelDidCancel(_ viewModel: ThreadListViewModelProtocol) } diff --git a/Riot/Modules/Threads/ThreadList/Views/Cell/ThreadModel.swift b/Riot/Modules/Threads/ThreadList/Views/Cell/ThreadModel.swift index 1692b9f6c..6667d5bfc 100644 --- a/Riot/Modules/Threads/ThreadList/Views/Cell/ThreadModel.swift +++ b/Riot/Modules/Threads/ThreadList/Views/Cell/ThreadModel.swift @@ -32,7 +32,7 @@ enum ThreadNotificationStatus { case notified case highlighted - init(withThread thread: MXThread) { + init(withThread thread: MXThreadProtocol) { if thread.highlightCount > 0 { self = .highlighted } else if thread.isParticipated && thread.notificationCount > 0 { diff --git a/Riot/Modules/Threads/ThreadsCoordinator.swift b/Riot/Modules/Threads/ThreadsCoordinator.swift index f5857dcc9..d645decd3 100644 --- a/Riot/Modules/Threads/ThreadsCoordinator.swift +++ b/Riot/Modules/Threads/ThreadsCoordinator.swift @@ -153,7 +153,7 @@ extension ThreadsCoordinator: ThreadListCoordinatorDelegate { } - func threadListCoordinatorDidSelectThread(_ coordinator: ThreadListCoordinatorProtocol, thread: MXThread) { + func threadListCoordinatorDidSelectThread(_ coordinator: ThreadListCoordinatorProtocol, thread: MXThreadProtocol) { let roomCoordinator = createThreadCoordinator(forThreadId: thread.id) selectedThreadCoordinator = roomCoordinator roomCoordinator.start()