mirror of
https://github.com/Novaloop-AG/element-x-ios.git
synced 2026-11-03 06:55:59 +00:00
Introduced the RoomTimelineViewProvider with different timeline items/views. Added timeline date separators (currently breaks back pagination)
This commit is contained in:
@@ -41,24 +41,28 @@ class RoomScreenViewModel: RoomScreenViewModelType, RoomScreenViewModelProtocol
|
||||
super.init(initialViewState: RoomScreenViewState())
|
||||
|
||||
state.roomTitle = roomProxy.name ?? ""
|
||||
state.messages = timelineController.timelineItems
|
||||
state.timelineItems = timelineController.timelineItems
|
||||
|
||||
timelineController.callbacks.sink { [weak self] callback in
|
||||
guard let self = self else { return }
|
||||
|
||||
switch callback {
|
||||
case .updatedTimelineItems:
|
||||
self.state.messages = timelineController.timelineItems
|
||||
self.state.timelineItems = timelineController.timelineItems
|
||||
}
|
||||
}.store(in: &cancellables)
|
||||
}
|
||||
|
||||
|
||||
// MARK: - Public
|
||||
|
||||
|
||||
override func process(viewAction: RoomScreenViewAction) {
|
||||
switch viewAction {
|
||||
case .loadPreviousPage:
|
||||
timelineController.paginateBackwards(Constants.backPaginationPageSize)
|
||||
case .itemAppeared:
|
||||
break
|
||||
case .itemDisappeared:
|
||||
break
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user