Skip to content

fix(ui): 连接拓扑随窗口宽高双向缩放 + 文案精简 + i18n 完整性#272

Merged
Sway-Chan merged 3 commits into
dododook:mainfrom
Sway-Chan:fix/topology-resize-log-hints
Jul 8, 2026
Merged

fix(ui): 连接拓扑随窗口宽高双向缩放 + 文案精简 + i18n 完整性#272
Sway-Chan merged 3 commits into
dododook:mainfrom
Sway-Chan:fix/topology-resize-log-hints

Conversation

@Sway-Chan

Copy link
Copy Markdown
Collaborator

连接拓扑响应式修复 + 一批 UI 文案精简 + i18n 完整性。基于当前 main。

连接拓扑随窗口宽高双向缩放

  • 高度棘轮根治(Fable headless-chrome repro 定位):.relative[contain:size]。原因:svg viewBox 纵横比使内容高经 flex-basis:0 链传进 .container(min-h-full auto 高、max-content 赢),内容地板≡上次量到的高、缩窗时 ResizeObserver 永远量不到更小值。加 contain 后内容退出尺寸方程→视口驱动→双向跟随。
  • 宽度:ResizeObserver 改兜底式(getBoundingClientRect + RO + window resize)。
  • 真机 CDP 实测:窗宽 640↔1100 viewBox 397↔857、窗高 720↔900 viewBox 高 307↔487,均双向精确跟随,无迟滞、不溢出。

移除冗余提示文案(+ 一并移除孤儿 i18n 键)

接管方式「怎么进」/分流策略「怎么分」/规则资源「资源经此处下载」+「自动更新」内联描述/规则弹窗副标题(改 sr-only 保 a11y)/singbox 面板描述/日志级别 logLevelDesc/关闭写盘 disableLogFileDesc/绕过 LAN「路由规则优先级高于此」(保 Windows TUN 内核级排除警示)。

i18n 完整性

  • 11 个用到但全 locale 缺失的 key(全 5 语言)→ 0 缺失。
  • helper.upgrade 命名空间冲突(字符串 vs 对象 helper.upgrade.title/desc/action/dismiss,致 4 键永远回落内联默认)→ 重命名 helper.upgradeX。
  • 5 语言 key 集完全一致(各 1650)。

布局

例外清单「恢复默认」按钮加 shrink-0+whitespace-nowrap(长 hint 挤致换行修复)。

验证

tsc 0 · eslint 0 · jest 2895 passed · macOS 真机 CDP(拓扑宽高双向跟随 + 文案移除确认,用户确认「正确了」)

Sway-Chan added 3 commits July 9, 2026 00:27
- 拓扑 ResizeObserver 改兜底式(getBoundingClientRect 直接量 + RO + window resize 双保险):修真机拖窗放大跟涨、缩小不回缩(单靠 RO 某些缩小路径未回调,viewBox 卡死旧宽)
- 移除内联描述:日志级别 logLevelDesc / 关闭写盘 disableLogFileDesc(保 *Full title tooltip + 采集锁定态提示)/ 绕过 LAN「路由规则优先级高于此」(保 Windows TUN 内核级排除警示)
- 一并移除 3 孤儿 i18n 键(全 5 语言)
…名空间去冲突)

- 窗口 minWidth 800→640 / minHeight 720→600:修「拖窗到 800 以下被卡住、拓扑无法回缩」(拓扑 RO 已能随窗回缩,受限于窗口最小宽)
- helper.upgrade 命名空间冲突:字符串 helper.upgrade(管理卡)与对象 helper.upgrade.title/desc/action/dismiss(toast)冲突 → 后者重命名 helper.upgradeX,4 键得以解析(原永远回落内联默认)
- 补 11 个用到但全 locale 缺失的 key(全 5 语言);5 语言 key 集完全一致(各 1650)、0 缺失
- .relative 加 [contain:size]:根治「高度棘轮」——svg viewBox 纵横比使内容高经 flex-basis:0 链传进 .container(min-h-full auto),内容地板≡上次量到的高、缩窗时 RO 永远量不到更小值(Fable headless-chrome repro 定位)。加 contain 后内容退出尺寸方程→视口驱动→双向跟随(真机 CDP:窗高 900↔720 时 viewBox 高 487↔307)
- 窗口 minWidth 640→800 / minHeight 600→720 恢复(高度棘轮才是真因,前置降 minWidth 系误判,回退)
@Sway-Chan Sway-Chan merged commit 47f54fd into dododook:main Jul 8, 2026
@Sway-Chan Sway-Chan deleted the fix/topology-resize-log-hints branch July 8, 2026 17:19
Sway-Chan added a commit that referenced this pull request Jul 8, 2026
充分梳理:高度棘轮同构实例仅拓扑(#272 已修)/连接/日志三处 hero 填充卡。连接页 sim 200 行实测 cardH 9386px(长到全内容高、缩窗不回缩、overflow-y 因卡高非 definite 失效,低行数掩盖)。
- .conns-scroll / .lv-stream 加 contain:size:内容 intrinsic 高退出尺寸方程→卡片视口驱动→内部正常滚动。真机 CDP:窗高 900 时 cardH 9386→709、内容 9384 在 707 容器内滚动。
- 弹窗(rl-dlg-body 等)因 DialogContent max-h-[92vh] definite + fixed 覆盖层安全,非风险。
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant