gui: renderChat 增加防护与日志; log:r 改 invoke; 修 SSE 流式丢失气泡; chat 布局 overflow 修复

This commit is contained in:
JianFeeeee
2026-08-15 09:03:07 +08:00
parent 2e47ceed8b
commit 15b45c7653
4 changed files with 20 additions and 8 deletions

View File

@ -497,15 +497,15 @@ code { font-family: var(--font-mono); font-size: 12px; color: var(--pre-color) }
.empty-state p { font-size: 14px; margin-bottom: 8px }
/* ===== Chat (对话主页) ===== */
.chat-layout { display: flex; flex-direction: column; gap: 12px; height: 100%; min-height: 60vh }
.chat-layout { display: flex; flex-direction: column; gap: 12px; height: 100%; min-height: 0 }
.chat-tabs { display: flex; gap: 4px; flex-wrap: wrap; border-bottom: 1px solid var(--border-color); padding-bottom: 10px }
.chat-tabs span { padding: 6px 14px; font-size: 13px; cursor: pointer; color: var(--text-muted); border-radius: var(--radius-pill); border: 1px solid transparent; transition: all .15s }
.chat-tabs span:hover { color: var(--text-primary); background: var(--bg-hover) }
.chat-tabs span.active { color: var(--accent); background: var(--accent-bg); border-color: color-mix(in srgb, var(--accent) 35%, transparent) }
.chat-panel { display: none; flex: 1; min-height: 0; flex-direction: column }
.chat-panel { display: none; flex: 1; min-height: 0; flex-direction: column; overflow: hidden }
.chat-panel.active { display: flex }
.chat-main { flex: 1; min-width: 0; min-height: 0; display: flex; flex-direction: column }
.chat-main .card { flex: 1; display: flex; flex-direction: column; margin-bottom: 0; min-height: 0; background: transparent; border: none; box-shadow: none; backdrop-filter: none; padding: 0 }
.chat-main .card { flex: 1; display: flex; flex-direction: column; margin-bottom: 0; min-height: 0; background: transparent; border: none; box-shadow: none; backdrop-filter: none; padding: 0; overflow: hidden }
.chat-main .card h2 { flex-shrink: 0 }
.chat-messages { flex: 1; overflow-y: auto; padding: 18px 18px 26px; margin-bottom: 0; display: flex; flex-direction: column; gap: 6px; min-height: 0 }
.msg { display: flex; gap: 8px; margin-bottom: 2px; align-items: flex-start; max-width: 100% }