From 38ea47df890e8a4b72c3b6009d1d5b8d3ec77b2e Mon Sep 17 00:00:00 2001 From: Tusooa Zhu Date: Thu, 19 May 2022 20:42:40 -0400 Subject: [PATCH] Fix virtual scrolling when the user has a lot of pinned statuses --- src/components/timeline/timeline.js | 5 +++-- 1 file 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 () {