From a9df2fb3769801040991eb6f796df4162636487e Mon Sep 17 00:00:00 2001 From: Maurice Parker Date: Tue, 8 Feb 2022 11:57:44 -0800 Subject: [PATCH] Revert code to not use cell prefetching on iOS 15. Fixes #3446 --- .../MasterTimelineViewController.swift | 20 +++++-------------- 1 file changed, 5 insertions(+), 15 deletions(-) diff --git a/iOS/MasterTimeline/MasterTimelineViewController.swift b/iOS/MasterTimeline/MasterTimelineViewController.swift index 9456f369b..94825c03d 100644 --- a/iOS/MasterTimeline/MasterTimelineViewController.swift +++ b/iOS/MasterTimeline/MasterTimelineViewController.swift @@ -79,6 +79,9 @@ class MasterTimelineViewController: UITableViewController, UndoableCommandRunner // Configure the table tableView.dataSource = dataSource + if #available(iOS 15.0, *) { + tableView.isPrefetchingEnabled = false + } numberOfTextLines = AppDefaults.shared.timelineNumberOfLines iconSize = AppDefaults.shared.timelineIconSize resetEstimatedRowHeight() @@ -525,12 +528,8 @@ class MasterTimelineViewController: UITableViewController, UndoableCommandRunner } @objc private func reloadAllVisibleCells() { - if #available(iOS 15, *) { - reconfigureCells(coordinator.articles) - } else { - let visibleArticles = tableView.indexPathsForVisibleRows!.compactMap { return dataSource.itemIdentifier(for: $0) } - reloadCells(visibleArticles) - } + let visibleArticles = tableView.indexPathsForVisibleRows!.compactMap { return dataSource.itemIdentifier(for: $0) } + reloadCells(visibleArticles) } private func reloadCells(_ articles: [Article]) { @@ -541,15 +540,6 @@ class MasterTimelineViewController: UITableViewController, UndoableCommandRunner } } - private func reconfigureCells(_ articles: [Article]) { - guard #available(iOS 15, *) else { return } - var snapshot = dataSource.snapshot() - snapshot.reconfigureItems(articles) - dataSource.apply(snapshot, animatingDifferences: false) { [weak self] in - self?.restoreSelectionIfNecessary(adjustScroll: false) - } - } - // MARK: Cell Configuring private func resetEstimatedRowHeight() {