From 545376740cb40b1ca4f68d94b71c3463252c248e Mon Sep 17 00:00:00 2001 From: ManishMadan2882 Date: Sat, 26 Apr 2025 19:33:24 +0530 Subject: [PATCH] (fix:re-render) useRef to check for bottom --- frontend/src/conversation/ConversationMessages.tsx | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/frontend/src/conversation/ConversationMessages.tsx b/frontend/src/conversation/ConversationMessages.tsx index d1a9a24e..941b9682 100644 --- a/frontend/src/conversation/ConversationMessages.tsx +++ b/frontend/src/conversation/ConversationMessages.tsx @@ -38,9 +38,9 @@ export default function ConversationMessages({ const { t } = useTranslation(); const conversationRef = useRef(null); - const [hasScrolledToLast, setHasScrolledToLast] = useState(true); + const atLast = useRef(true); const [eventInterrupt, setEventInterrupt] = useState(false); - + const handleUserInterruption = () => { if (!eventInterrupt && status === 'loading') { setEventInterrupt(true); @@ -64,7 +64,8 @@ export default function ConversationMessages({ const el = conversationRef.current; if (!el) return; const isBottom = el.scrollHeight - el.scrollTop - el.clientHeight < 10; - setHasScrolledToLast(isBottom); + + atLast.current = isBottom }; useEffect(() => { @@ -145,7 +146,7 @@ export default function ConversationMessages({ onTouchMove={handleUserInterruption} className="flex justify-center w-full overflow-y-auto h-full sm:pt-12" > - {queries.length > 0 && !hasScrolledToLast && ( + {queries.length > 0 && !atLast.current && (