diff --git a/app/soapbox/components/scroll-top-button.tsx b/app/soapbox/components/scroll-top-button.tsx index 33aadf328..3652296ef 100644 --- a/app/soapbox/components/scroll-top-button.tsx +++ b/app/soapbox/components/scroll-top-button.tsx @@ -52,7 +52,7 @@ const ScrollTopButton: React.FC = ({ } else { setScrolled(false); } - }, 150, { trailing: true }), [autoload, threshold, autoloadThreshold]); + }, 150, { trailing: true }), [autoload, threshold, autoloadThreshold, onClick]); const scrollUp = () => { window.scrollTo({ top: 0 }); @@ -69,7 +69,7 @@ const ScrollTopButton: React.FC = ({ return () => { window.removeEventListener('scroll', handleScroll); }; - }, []); + }, [onClick]); useEffect(() => { maybeUnload(); diff --git a/app/soapbox/features/ui/components/timeline.tsx b/app/soapbox/features/ui/components/timeline.tsx index bc7c01c47..53d1ad7f8 100644 --- a/app/soapbox/features/ui/components/timeline.tsx +++ b/app/soapbox/features/ui/components/timeline.tsx @@ -33,8 +33,13 @@ const Timeline: React.FC = ({ const isPartial = useAppSelector(state => (state.timelines.get(timelineId)?.isPartial || false) === true); const hasMore = useAppSelector(state => state.timelines.get(timelineId)?.hasMore === true); const totalQueuedItemsCount = useAppSelector(state => state.timelines.get(timelineId)?.totalQueuedItemsCount || 0); + const isFilteringFeed = useAppSelector(state => !!state.timelines.get(timelineId)?.feedAccountId); const handleDequeueTimeline = () => { + if (isFilteringFeed) { + return; + } + dispatch(dequeueTimeline(timelineId, onLoadMore)); };