From 142082ba838c295e8714334e58b9cc5404d5eca2 Mon Sep 17 00:00:00 2001 From: RoyceDa Date: Fri, 20 Feb 2026 18:01:22 +0200 Subject: [PATCH] =?UTF-8?q?=D0=98=D1=81=D0=BF=D1=80=D0=B0=D0=B2=D0=BB?= =?UTF-8?q?=D0=B5=D0=BD=20=D1=81=D0=BA=D1=80=D0=BE=D0=BB=D0=BB=20=D0=B2?= =?UTF-8?q?=D0=BD=D0=B8=D0=B7=20=D0=BF=D1=80=D0=B8=20=D0=BF=D0=BE=D0=B4?= =?UTF-8?q?=D0=B3=D1=80=D1=83=D0=B7=D0=BA=D0=B5=20=D0=BD=D0=BE=D0=B2=D1=8B?= =?UTF-8?q?=D1=85=20=D1=81=D0=BE=D0=BE=D0=B1=D1=89=D0=B5=D0=BD=D0=B8=D0=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/components/Messages/Messages.tsx | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/app/components/Messages/Messages.tsx b/app/components/Messages/Messages.tsx index e08df20..970a9b3 100644 --- a/app/components/Messages/Messages.tsx +++ b/app/components/Messages/Messages.tsx @@ -21,6 +21,7 @@ export function Messages() { const isFirstRenderRef = useRef(true); const previousScrollHeightRef = useRef(0); const distanceFromButtomRef = useRef(0); + const distanceFromTopRef = useRef(0); const [affix, setAffix] = useState(false); const [wallpaper] = useSetting @@ -120,7 +121,8 @@ export function Messages() { const lastMessage = messages[messages.length - 1]; // Скроллим если пользователь внизу или это его собственное сообщение - if ((shouldAutoScrollRef.current || lastMessage.from_me)) { + if ((shouldAutoScrollRef.current || lastMessage.from_me) && distanceFromTopRef.current > 10) { + console.info(distanceFromTopRef.current); scrollToBottom(true); } }, [messages.length, loading, scrollToBottom]); @@ -175,6 +177,8 @@ export function Messages() { onScrollPositionChange={(scroll) => { if (!viewportRef.current) return; + distanceFromTopRef.current = scroll.y; + // Загружаем старые сообщения при достижении верха if (scroll.y === 0 && !loading && messages.length >= 20) { loadMessagesToScrollAreaTop();