mirror of
https://github.com/Novaloop-AG/element-x-ios.git
synced 2026-11-03 16:10:20 +00:00
Rename the TimelineProvider to TimelineItemProvider
This commit is contained in:
committed by
Stefan Ceriu
parent
d058e7cd25
commit
972084aaf7
@@ -32,14 +32,14 @@ class RoomScreenViewModel: RoomScreenViewModelType, RoomScreenViewModelProtocol
|
||||
actionsSubject.eraseToAnyPublisher()
|
||||
}
|
||||
|
||||
private var pinnedEventsTimelineProvider: TimelineProviderProtocol? {
|
||||
private var pinnedEventsTimelineItemProvider: TimelineItemProviderProtocol? {
|
||||
didSet {
|
||||
guard let pinnedEventsTimelineProvider else {
|
||||
guard let pinnedEventsTimelineItemProvider else {
|
||||
return
|
||||
}
|
||||
|
||||
buildPinnedEventContents(timelineItems: pinnedEventsTimelineProvider.itemProxies)
|
||||
pinnedEventsTimelineProvider.updatePublisher
|
||||
buildPinnedEventContents(timelineItems: pinnedEventsTimelineItemProvider.itemProxies)
|
||||
pinnedEventsTimelineItemProvider.updatePublisher
|
||||
// When pinning or unpinning an item, the timeline might return empty for a short while, so we need to debounce it to prevent weird UI behaviours like the banner disappearing
|
||||
.debounce(for: .milliseconds(100), scheduler: DispatchQueue.main)
|
||||
.sink { [weak self] updatedItems, _ in
|
||||
@@ -193,7 +193,7 @@ class RoomScreenViewModel: RoomScreenViewModelType, RoomScreenViewModelProtocol
|
||||
.filter { $0 == .reachable }
|
||||
.receive(on: DispatchQueue.main)
|
||||
.sink { [weak self] _ in
|
||||
self?.setupPinnedEventsTimelineProviderIfNeeded()
|
||||
self?.setupPinnedEventsTimelineItemProviderIfNeeded()
|
||||
}
|
||||
.store(in: &cancellables)
|
||||
|
||||
@@ -347,8 +347,8 @@ class RoomScreenViewModel: RoomScreenViewModelType, RoomScreenViewModelProtocol
|
||||
state.canBan = await (try? roomProxy.canUserBan(userID: ownUserID).get()) == true
|
||||
}
|
||||
|
||||
private func setupPinnedEventsTimelineProviderIfNeeded() {
|
||||
guard pinnedEventsTimelineProvider == nil else {
|
||||
private func setupPinnedEventsTimelineItemProviderIfNeeded() {
|
||||
guard pinnedEventsTimelineItemProvider == nil else {
|
||||
return
|
||||
}
|
||||
|
||||
@@ -357,8 +357,8 @@ class RoomScreenViewModel: RoomScreenViewModelType, RoomScreenViewModelProtocol
|
||||
return
|
||||
}
|
||||
|
||||
if pinnedEventsTimelineProvider == nil {
|
||||
pinnedEventsTimelineProvider = pinnedEventsTimeline.timelineProvider
|
||||
if pinnedEventsTimelineItemProvider == nil {
|
||||
pinnedEventsTimelineItemProvider = pinnedEventsTimeline.timelineItemProvider
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user