From b174527719bf2f00a1487241e1d9946f3446b9ec Mon Sep 17 00:00:00 2001 From: 7418 <7418@openclaw.ai> Date: Sat, 28 Feb 2026 13:13:30 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20ChatList=20=E5=B8=83=E5=B1=80=E4=BC=98?= =?UTF-8?q?=E5=8C=96=20+=20=E5=A4=9A=E8=AF=AD=E8=A8=80=E9=80=82=E9=85=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - ChatList 字体从 12px 放大到 13px,图标同步放大,改善点击体验 - ConnectionStatus 胶囊移到顶部 header 区域,与下方按钮左对齐 - "Threads" 改为会话列表上方的小标题,充当分割作用 - ConnectionStatus 文字(Connected/Disconnected/Checking)多语言适配 - "从 Claude CLI 导入" 改为 "从 Claude Code 导入" - 新增 i18n key: chatList.threads, connection.connected/disconnected/checking Co-Authored-By: Claude Opus 4.6 --- src/components/layout/ChatListPanel.tsx | 34 ++++++++++++---------- src/components/layout/ConnectionStatus.tsx | 6 ++-- src/i18n/en.ts | 6 +++- src/i18n/zh.ts | 6 +++- 4 files changed, 32 insertions(+), 20 deletions(-) diff --git a/src/components/layout/ChatListPanel.tsx b/src/components/layout/ChatListPanel.tsx index 3246f46..31333a8 100644 --- a/src/components/layout/ChatListPanel.tsx +++ b/src/components/layout/ChatListPanel.tsx @@ -358,10 +358,7 @@ export function ChatListPanel({ open, width }: ChatListPanelProps) { style={{ width: width ?? 240 }} > {/* Header - extra top padding for macOS traffic lights */} -
- - Threads - +
@@ -425,12 +422,19 @@ export function ChatListPanel({ open, width }: ChatListPanelProps) { {/* Session list grouped by project */}
+ {/* Section title */} +
+ + {t('chatList.threads')} + +
+ {/* Split group section */} {isSplitActive && (
- - {t('split.splitGroup')} + + {t('split.splitGroup')}
{splitSessions.map((session) => { @@ -466,7 +470,7 @@ export function ChatListPanel({ open, width }: ChatListPanelProps) { )}
- + {session.title}
@@ -532,13 +536,13 @@ export function ChatListPanel({ open, width }: ChatListPanelProps) { > - + {group.displayName} {/* New chat in project button (on hover) */} @@ -562,7 +566,7 @@ export function ChatListPanel({ open, width }: ChatListPanelProps) { > New chat in {group.displayName} @@ -634,7 +638,7 @@ export function ChatListPanel({ open, width }: ChatListPanelProps) { }); }} > - + )} {/* Streaming indicator: hidden when hover shows split icon */} @@ -658,14 +662,14 @@ export function ChatListPanel({ open, width }: ChatListPanelProps) { )}
- + {session.title}
{/* Right area — fixed width, time and delete stacked with opacity */}
{formatRelativeTime(session.updated_at, t)} @@ -678,7 +682,7 @@ export function ChatListPanel({ open, width }: ChatListPanelProps) { onClick={(e) => handleDeleteSession(e, session.id)} disabled={isDeleting} > - +
diff --git a/src/components/layout/ConnectionStatus.tsx b/src/components/layout/ConnectionStatus.tsx index a8cd48f..c6909c8 100644 --- a/src/components/layout/ConnectionStatus.tsx +++ b/src/components/layout/ConnectionStatus.tsx @@ -141,10 +141,10 @@ export function ConnectionStatus() { )} /> {status === null - ? "Checking" + ? t('connection.checking') : connected - ? "Connected" - : "Disconnected"} + ? t('connection.connected') + : t('connection.disconnected')} diff --git a/src/i18n/en.ts b/src/i18n/en.ts index dddd916..254118f 100644 --- a/src/i18n/en.ts +++ b/src/i18n/en.ts @@ -22,8 +22,9 @@ const en = { 'chatList.delete': 'Delete', 'chatList.searchSessions': 'Search sessions...', 'chatList.noSessions': 'No sessions yet', - 'chatList.importFromCli': 'Import from Claude CLI', + 'chatList.importFromCli': 'Import from Claude Code', 'chatList.addProjectFolder': 'Add project folder', + 'chatList.threads': 'Threads', // ── Message list ──────────────────────────────────────────── 'messageList.claudeChat': 'Claude Chat', @@ -270,6 +271,9 @@ const en = { 'connection.installAuto': 'Install Claude Code Automatically', 'connection.refresh': 'Refresh', 'connection.installClaude': 'Install Claude Code', + 'connection.connected': 'Connected', + 'connection.disconnected': 'Disconnected', + 'connection.checking': 'Checking', // ── Install wizard ────────────────────────────────────────── 'install.title': 'Install Claude Code', diff --git a/src/i18n/zh.ts b/src/i18n/zh.ts index 59149b1..4278602 100644 --- a/src/i18n/zh.ts +++ b/src/i18n/zh.ts @@ -19,8 +19,9 @@ const zh: Record = { 'chatList.delete': '删除', 'chatList.searchSessions': '搜索会话...', 'chatList.noSessions': '暂无会话', - 'chatList.importFromCli': '从 Claude CLI 导入', + 'chatList.importFromCli': '从 Claude Code 导入', 'chatList.addProjectFolder': '添加项目文件夹', + 'chatList.threads': '对话列表', // ── Message list ──────────────────────────────────────────── 'messageList.claudeChat': 'Claude 对话', @@ -267,6 +268,9 @@ const zh: Record = { 'connection.installAuto': '自动安装 Claude Code', 'connection.refresh': '刷新', 'connection.installClaude': '安装 Claude Code', + 'connection.connected': '已连接', + 'connection.disconnected': '未连接', + 'connection.checking': '检测中', // ── Install wizard ────────────────────────────────────────── 'install.title': '安装 Claude Code',