From 8b50ae323f13c43d5e97cf42650f40b3152e91ae Mon Sep 17 00:00:00 2001 From: thzxx Date: Fri, 12 Jun 2026 14:57:08 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E5=8F=91=E9=80=81=E6=B6=88=E6=81=AF?= =?UTF-8?q?=E6=97=B6=E5=BC=BA=E5=88=B6resetAutoScroll=EF=BC=8C=E8=A7=A3?= =?UTF-8?q?=E5=86=B3=E6=89=8B=E5=8A=A8=E4=B8=8A=E6=BB=91=E5=90=8E=E6=96=B0?= =?UTF-8?q?=E6=B6=88=E6=81=AF=E4=B8=8D=E8=87=AA=E5=8A=A8=E6=BB=9A=E5=8A=A8?= =?UTF-8?q?=E7=9A=84=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/renderer/components/chat-area.ts | 6 ++++++ src/renderer/components/input-area.ts | 3 ++- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/src/renderer/components/chat-area.ts b/src/renderer/components/chat-area.ts index 516380e..c4b71c4 100644 --- a/src/renderer/components/chat-area.ts +++ b/src/renderer/components/chat-area.ts @@ -102,6 +102,12 @@ export function scrollToBottom(): void { }); } +/** 发送新消息时重置自动滚动,确保新消息可见 */ +export function resetAutoScroll(): void { + autoScroll = true; + if (scrollBtnEl) scrollBtnEl.style.display = 'none'; +} + export function renderMessages(): void { const currentSession = state.get(KEYS.CURRENT_SESSION); const msgs = currentSession ? currentSession.messages : []; diff --git a/src/renderer/components/input-area.ts b/src/renderer/components/input-area.ts index 8bc20ee..f5706fd 100644 --- a/src/renderer/components/input-area.ts +++ b/src/renderer/components/input-area.ts @@ -8,7 +8,7 @@ import { detectLanguage, truncate, escapeHtml, formatSize } from '../utils/utils import { getSelectedModel, isThinkEnabled, isVisionAvailable, isToolCallingSupported } from './model-bar.js'; import { renderMessages, clearMessagesDOM, appendAssistantPlaceholder, appendSystemMessage, - updateLastAssistantMessage, clearMessages, safeMarkdown, enableAutoScroll, + updateLastAssistantMessage, clearMessages, safeMarkdown, enableAutoScroll, resetAutoScroll, appendToolCallCardToPlaceholder, updateToolCallCardInPlaceholder, resetCurrentPlaceholder } from './chat-area.js'; import { showToast } from './toast.js'; @@ -778,6 +778,7 @@ export async function sendMessage(): Promise { } logInfo(`发送消息: ${model}`, text ? text.slice(0, 60) + (text.length > 60 ? '...' : '') : '[附件消息]'); + resetAutoScroll(); // 发送新消息时强制恢复自动滚动 if (pendingImages.length > 0 && !isVisionAvailable()) { appendSystemMessage('⚠️ 当前模型不支持图片分析,请移除图片后重试');