aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTusooa Zhu <tusooa@kazv.moe>2022-05-19 20:42:40 -0400
committerTusooa Zhu <tusooa@kazv.moe>2022-05-19 20:42:40 -0400
commit38ea47df890e8a4b72c3b6009d1d5b8d3ec77b2e (patch)
tree5abb4c3e92d84ea74a87690b168984636aecb8cc
parent96a24ec6259cf2658f5d53939aa75c0bacfb657d (diff)
Fix virtual scrolling when the user has a lot of pinned statuses
-rw-r--r--src/components/timeline/timeline.js5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/components/timeline/timeline.js b/src/components/timeline/timeline.js
index 8ec5d1e5..e92eb031 100644
--- a/src/components/timeline/timeline.js
+++ b/src/components/timeline/timeline.js
@@ -76,8 +76,9 @@ const Timeline = {
statusesToDisplay () {
const amount = this.timeline.visibleStatuses.length
const statusesPerSide = Math.ceil(Math.max(3, window.innerHeight / 80))
- const min = Math.max(0, this.virtualScrollIndex - statusesPerSide)
- const max = Math.min(amount, this.virtualScrollIndex + statusesPerSide)
+ const nonPinnedIndex = this.virtualScrollIndex - this.filteredPinnedStatusIds.length
+ const min = Math.max(0, nonPinnedIndex - statusesPerSide)
+ const max = Math.min(amount, nonPinnedIndex + statusesPerSide)
return this.timeline.visibleStatuses.slice(min, max).map(_ => _.id)
},
virtualScrollingEnabled () {