 XuzandClaude Opus 5.5
|
0d455e02f5
|
网络连接:右侧栏的新工具,列出 Linux 主机的 TCP、UDP 连接和监听端口
- 卡片显示协议、状态、地址、进程和用户,可搜索、按协议和状态筛选
- 打开或切换终端时读取一次,点刷新再读;系统监控和它共用终端里执行命令的部分
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
2026-10-02 14:41:00 +08:00 |
|
 XuzandClaude Opus 5.5
|
8a0436caf6
|
系统监控:右侧栏的第一个工具,经终端自己的 SSH 连接读取 Linux 主机的 CPU、内存、网络和磁盘
- 右侧栏只跟远程终端出现,已知不是 Linux 的主机不显示监控图标,最窄 320 px
- 端口转发、凭据列表和开始页的滚动条挂到不滚动的外层上,修正滑块位置
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
2026-10-02 13:34:23 +08:00 |
|
 XuzandClaude Opus 5.5
|
616bcead0f
|
终端右侧栏:窗口最右边一列工具切换,右侧 Dock 里显示所选工具,先放四个占位面板
- 窗口级的一份右侧栏,只跟着终端出现(远程终端和本地终端):SFTP、设置、开始页在前时
右侧栏连同按钮列都不显示,回到任一终端时按原样恢复,内容对应这个终端(主机或本机)
- 右侧 Dock 只有一个面板 ToolSidebar,按钮列由工作区画在 DockArea 外面;点工具显示、
再点收起,⌘⌥B / Ctrl+Alt+B 显示或隐藏;默认收起、宽 320 px,不持久化
- 占位工具:命令片段、历史命令、Docker、系统监控,写明将来显示什么和「即将推出」
- 当前标签统一经 Workspace::set_active_tab 改,它同步右侧栏的显示与指向的终端
- 右侧 Dock 不可折叠,只在关闭时临时可折叠,避免中间区标签栏多出 gpui-kit 的折叠按钮;
按钮不抢终端焦点,收起时焦点在右侧栏里就交还给中间的标签
- 新增 UI 测试;CLAUDE.md 记下产品决定、实现要点和测试标识
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
2026-10-02 11:42:31 +08:00 |
|
 XuzandClaude Opus 5.5
|
0ff59d07bc
|
侧栏三个列表的行 tooltip 统一成主机列表的样式:开在行的右侧、主题反色、在行间跟着指针移动
- 主机列表的 TooltipOverlay、主人判断和动画抽成 shared::RowTooltips,主机、端口转发、凭据三个面板共用;
转发和凭据原来用 ListItem::tooltip,贴着鼠标弹出、盖住下面的行、和菜单同色
- 内容一律是一行要点、下面小一号的补充:主机是 user@地址:端口加备注,转发是完整的规则说明,
凭据是行里第二行的全文,密钥凭据下面是私钥文件的完整路径
- 转发行的启停按钮有自己的 tooltip:指针在按钮上时行的 tooltip 收起,回到行里再出来;
ListItem 的 suffix 不在内容盒里,按钮区另外量一次,tooltip 按并集定位,不再压在按钮上
- 新增转发和凭据行 tooltip 的 UI 测试;主机备注的测试 id 改为 host-tooltip-note;CLAUDE.md 同步
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
2026-10-02 09:57:06 +08:00 |
|
Xuz
|
c69d14dc4b
|
其余新建、编辑对话框的校验错误统一改用错误通知
- 分组、端口转发、凭据、SFTP 重命名 / 新建和「打开目录」不再在表单最下面放错误行,
校验不过时弹 form_error_notification;同一种通知新的替换旧的,点一下收起,
对话框关闭时由 on_close 收掉(凭据加密完后自行关闭的那条路单独收)
- 删除不再使用的 shared::form_error
- 新增测试:主机、分组、端口转发、凭据四个对话框各弹一条错误通知,关闭对话框后消失
- CLAUDE.md 写明「表单的校验错误一律弹错误通知」
|
2026-10-01 15:47:24 +08:00 |
|
Xuz
|
b97d5b493e
|
修正通知画在对话框背景底下:通知层的绘制优先级提到弹出层之下一级
- gpui-base 的对话框按 10 + 层号的优先级绘制,通知层原来是 1,一直被对话框背景盖住、
发灰,点它也点到背景上;改为 POPUP_PRIORITY - 1,高过对话框、低于菜单和 tooltip
- 主机表单的错误通知点一下就收起
- 新增测试:点主机对话框的错误通知能点到它并收起(旧优先级下这个测试超时)
- CLAUDE.md 更正对话框绘制优先级的说法
|
2026-10-01 15:35:54 +08:00 |
|
Xuz
|
d9fcb78ea4
|
主机对话框的校验错误改用错误通知弹出,不再显示在表单最下面
- 新增 shared::form_error_notification / dismiss_form_error:错误以通知弹出,元素沿用
form-error 标识;同一种通知新的替换旧的,不叠;对话框关闭时一并收掉
- 主机表单去掉错误行和对应的状态
- 新建主机的校验测试补上:错误是一条通知、再点一次仍只有一条、保存后消失
|
2026-10-01 15:34:09 +08:00 |
|
Xuz
|
82fcdd4296
|
SFTP 标签栏右侧显示连接延迟,和终端标签一样
- SFTP 工作线程另起一个任务测往返:新连接建好就测,之后每 5 秒一次,传输进行中也照测;
只在一次 ping 期间持有连接,客户端被换掉或断开就放手,「断开」照样立刻关掉连接
- 新事件 SftpEvent::Latency;SFTP 标签在已连接时于标签栏右侧显示,断开、重连时清掉
- Latency / LatencyLevel 从终端模块移到 connection.rs;测往返的函数提到 ssh/latency.rs,
终端和 SFTP 共用;标签栏上的延迟文字抽成 shared::LatencyLabel
- 新增协议测试(连上后很快报出实测延迟)和 SFTP 标签栏的界面测试
|
2026-10-01 15:32:24 +08:00 |
|
Xuz
|
388a1aa68a
|
UI 测试按功能拆成模块:tests/ui.rs → tests/ui/
- 仍是一个测试程序(tests/ui/main.rs,cargo test --test ui),每个文件单独成测试程序会再链接一遍 GPUI
- 按功能分 11 个模块:host_dialog、host_tree、connection、terminal、workspace、settings、
sftp、transfer、forward、credential、update
- 两个以上模块共用的夹具和假实现放进 support/:mod.rs 是公共的 use、种子 id 和通用助手,
其余按终端、SFTP、端口转发、测试连接、凭据分文件;只有一个模块用的留在那个模块里
- 纯搬移,测试逻辑不变:147 个测试名称与搬移前一致,全部通过
- CLAUDE.md 写明模块划分和新测试该放哪里,AGENTS.md、README 改路径
|
2026-10-01 14:53:33 +08:00 |
|