-
Notifications
You must be signed in to change notification settings - Fork 0
Issue 34
clean edited this page Sep 17, 2026
·
2 revisions
- 类型:缺陷修复
- 状态:已实现,待 PR 合并
- Issue:https://github.com/ShaoClean/remote-git/issues/34
- PR:https://github.com/ShaoClean/remote-git/pull/35
- 最近更新:2026-09-16
- 代码基线:development / 5ee9c7f
- 修复提交:a5e752b42b7cb114d80c64a0e1663cf90f89690f
UI 重构 #33 后,打开多个仓库并展开工作区,顶部标签栏横跨左侧工作区上方,使工作区标题从第二行开始;加号、面板显隐按钮和 tab 内的名称、关闭图标存在错位。用户要求工作区独占完整左列,并统一顶部对齐。
在隔离的 workspace fixture 中打开 remote-git、design-system、empty-repo,切回 remote-git。1440 × 900 下实测:工作区顶部为 y=48;加号中心比面板按钮高 4px;关闭按钮比同 tab 名称低 5px;激活标签整体比其余标签低 1px。
- 外层网格原本让标签栏和状态栏跨两列,工作区只占第二行。改为工作区贯穿完整左列,右列依次放置标签栏、内容区和状态栏;调整宽度的分隔线也覆盖整列。
- 工作区展开时,折叠按钮移入左列标题,和管理连接按钮组成居中操作组;收起时,展开按钮和设置入口留在顶部。展开后将键盘焦点交接到新的按钮位置。窄屏继续使用抽屉与 Escape 关闭。
- 32px 标签继承了旧 40px 标签的关闭按钮外边距,以及激活标签的负底边距;加号继承了 5px 底边距和底对齐。为当前标签栏统一居中布局、显式尺寸、名称行高和横向间距,取消这些垂直偏移。
- 窄屏旧规则会隐藏加号的图标 span,当前标签栏显式保留图标,只隐藏按钮文字。长名称保持省略显示,关闭按钮不收缩,标签过多时横向滚动。
保留原蓝色主题。变更仅涉及 Layout.tsx 与 workspace-layout.css;布局偏好数据结构、Git/SSH 操作和桌面更新流程不变。
- 工作区从顶部到底部独占左列,标签栏、内容和状态栏的左边界相同。
- 加号、左右面板按钮、仓库名称、文件夹图标、状态点和关闭图标垂直居中;选中标签不位移。
- 长名称不挤压关闭按钮,窄屏加号仍可见,标签横向溢出不造成整页横向溢出。
- 面板显隐、快捷键、鼠标/键盘调整宽度、宽度持久化、标签切换/关闭和抽屉焦点无回归。
环境:2026-09-16,macOS arm64,Node.js 25.5.0,Ego Lite Chromium,仓库内 workspace fixture 提供内存 API,未访问真实 SSH 或写入真实仓库。
| 检查 | 实际结果 |
|---|---|
| npm ci | 通过 |
| 首次 npm run test -w web | 未通过:全新 worktree 尚未构建 shared,5 个测试文件无法加载依赖 |
| npm run build -w @remote-git/shared 后重跑 npm run test -w web | 46/46 通过,解决上述环境准备问题 |
| npm run build -w web | 通过;存在与基线相同的 bundle 大于 500kB 提示 |
| git diff --check、Prettier 检查两个修改文件 | 通过 |
| 2048、1440、1024、900、820、390px 宽度 | 标签栏/内容左边界一致;无整页横向溢出;加号可见;名称、文件夹及关闭 SVG 与面板按钮中心误差不超过 0.5px |
| 1440 × 900 对齐测量 | 工作区 y=0、高度 900;标签栏/内容/状态栏 x=236;加号、面板按钮、所有标签名称与关闭按钮中心均为 y=23.5 |
| 长名称 CSS 压力检查 | 临时替换页面中一个名称为长文本:tab 宽度上限 220px,名称省略、关闭按钮未越界且保持居中;检查后恢复原名称 |
| 调整宽度 | 键盘 End/Home/方向键有效;从标题处拖动分隔线到 236px 后,重新加载仍为 236px |
| 左右面板与快捷键 | 单独和同时隐藏/显示正常,隐藏后释放空间;展开工作区后焦点回到折叠按钮 |
| 390px 抽屉 | 打开后焦点进入抽屉,Escape 关闭并回到展开按钮 |
| 标签操作 | 切换正常;关闭当前 remote-git 后选中相邻 design-system;加号进入仓库列表,可以重新打开仓库 |




未运行原生 Electron 安装包,也未在 Windows/Linux 实机验证;实际 Git/SSH 操作不属于本次布局验证范围。回退代码提交可恢复旧布局,已有布局偏好可继续读取。Wiki 独立维护,回退代码时需单独核对本页。