From a1300d0b82186805c85fb8fa9414c3c962a5686f Mon Sep 17 00:00:00 2001 From: Stefan Ceriu Date: Fri, 24 Feb 2023 14:41:44 +0200 Subject: [PATCH] Sliding sync session reset manual backpagination (#628) * Force a timeline backpagination when the app becomes active again in case the sliding sync session expires and it no longer shows any items * Better way to load up timeline items when empty --- .../Screens/RoomScreen/View/TimelineTableViewController.swift | 4 ++++ ElementX/Sources/Screens/RoomScreen/View/TimelineView.swift | 4 ---- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/ElementX/Sources/Screens/RoomScreen/View/TimelineTableViewController.swift b/ElementX/Sources/Screens/RoomScreen/View/TimelineTableViewController.swift index c0124fe71..2e399c530 100644 --- a/ElementX/Sources/Screens/RoomScreen/View/TimelineTableViewController.swift +++ b/ElementX/Sources/Screens/RoomScreen/View/TimelineTableViewController.swift @@ -48,6 +48,10 @@ class TimelineTableViewController: UIViewController { } applySnapshot() + + if timelineItems.isEmpty { + paginateBackwardsPublisher.send() + } } } diff --git a/ElementX/Sources/Screens/RoomScreen/View/TimelineView.swift b/ElementX/Sources/Screens/RoomScreen/View/TimelineView.swift index 5fede34a8..7e6bc3f66 100644 --- a/ElementX/Sources/Screens/RoomScreen/View/TimelineView.swift +++ b/ElementX/Sources/Screens/RoomScreen/View/TimelineView.swift @@ -45,10 +45,6 @@ struct TimelineView: UIViewControllerRepresentable { init(viewModelContext: RoomScreenViewModel.Context) { context = viewModelContext - - if viewModelContext.viewState.items.isEmpty { - viewModelContext.send(viewAction: .paginateBackwards) - } } /// Updates the specified table view's properties from the current view state.