1
0
mirror of https://github.com/mastodon/mastodon-ios.git synced 2025-02-03 02:37:37 +01:00

Only adjust scroll offset if new tableview contents does contain the expected anchoring index path.

This commit is contained in:
shannon 2024-12-17 12:59:35 -05:00
parent 99fad6fb23
commit d84b5474c4

View File

@ -84,12 +84,13 @@ extension HomeTimelineViewModel {
}
await self.updateDataSource(snapshot: newSnapshot, animatingDifferences: false)
if tableView.numberOfSections >= difference.targetIndexPath.section && tableView.numberOfRows(inSection: difference.targetIndexPath.section) >= difference.targetIndexPath.row {
let tableViewContainsTargetIndexPath = difference.targetIndexPath.section < tableView.numberOfSections && difference.targetIndexPath.row < tableView.numberOfRows(inSection: difference.targetIndexPath.section)
if tableViewContainsTargetIndexPath {
tableView.scrollToRow(at: difference.targetIndexPath, at: .top, animated: false)
var contentOffset = tableView.contentOffset
contentOffset.y = tableView.contentOffset.y - difference.sourceDistanceToTableViewTopEdge
tableView.setContentOffset(contentOffset, animated: false)
}
var contentOffset = tableView.contentOffset
contentOffset.y = tableView.contentOffset.y - difference.sourceDistanceToTableViewTopEdge
tableView.setContentOffset(contentOffset, animated: false)
self.didLoadLatest.send()
self.hasPendingStatusEditReload = false
} // end Task