diff --git a/src/components/middle/MessageList.tsx b/src/components/middle/MessageList.tsx index 0ffcb097c..8df067e71 100644 --- a/src/components/middle/MessageList.tsx +++ b/src/components/middle/MessageList.tsx @@ -414,8 +414,9 @@ const MessageList: FC = ({ const hasLastMessageChanged = ( messageIds && prevMessageIds && messageIds[messageIds.length - 1] !== prevMessageIds[prevMessageIds.length - 1] ); + const isAlreadyFocusing = messageIds && memoFocusingIdRef.current === messageIds[messageIds.length - 1]; - if (isAtBottom && hasLastMessageChanged && !hasFirstMessageChanged && !memoFocusingIdRef.current) { + if (isAtBottom && hasLastMessageChanged && !hasFirstMessageChanged && !isAlreadyFocusing) { if (lastItemElement) { fastRaf(() => { fastSmoothScroll(