diff --git a/Data Sources/TableViewDataSource.swift b/Data Sources/TableViewDataSource.swift index dccb659..de60615 100644 --- a/Data Sources/TableViewDataSource.swift +++ b/Data Sources/TableViewDataSource.swift @@ -59,6 +59,14 @@ final class TableViewDataSource: UITableViewDiffableDataSource, + completion: (() -> Void)? = nil) { + updateQueue.async { + super.applySnapshotUsingReloadData(snapshot, completion: completion) + } + } + override func tableView(_ tableView: UITableView, titleForHeaderInSection section: Int) -> String? { let currentSnapshot = snapshot() let section = currentSnapshot.sectionIdentifiers[section] diff --git a/View Controllers/TableViewController.swift b/View Controllers/TableViewController.swift index 5b09c67..0759127 100644 --- a/View Controllers/TableViewController.swift +++ b/View Controllers/TableViewController.swift @@ -497,7 +497,7 @@ private extension TableViewController { setPreviousOffset = true } - self.dataSource.apply(update.sections.snapshot(), animatingDifferences: false) { [weak self] in + self.dataSource.applySnapshotUsingReloadData(update.sections.snapshot()) { [weak self] in guard let self = self else { return } if let itemId = update.maintainScrollPositionItemId,