fix(macos): 修复工作台壁纸下编辑器右侧黑边 - #943
Merged
Merged
Conversation
1lck
reviewed
Sep 28, 2026
1lck
left a comment
Owner
There was a problem hiding this comment.
Lithe Review
结论:未发现需要阻塞合并的问题。当前 CI 尚未全绿,失败项需单独处理后再判断合并条件。
范围: preview ← PR #943,共同基点 9bc8300c417086585acedff43ef2060c6ff2db0e 至 d7a5362039707a74a72f0ed5c2e4e92dbeecc70f,6 个变更文件。
Scope Check
- 主题适配沿用宿主现有 background 输入,把它同时映射到 Monaco 原生 editorOverviewRuler.background;透明壁纸和普通实体背景共用同一条路径,没有写死始终透明,也没有关闭缩略图来掩盖问题。
- 追踪 defineWorkbenchTheme → workbench.configure → updateOptions/setTheme,并检查真实 WebKit 测试。新增断言同时验证 CSS 主题变量和 overview ruler canvas 像素,覆盖实体及全透明两种状态;显式 render 后采样,finally 恢复主题并清理模型,没有新增计时轮询。
- 架构 Note、平台功能矩阵和生成视图已同步;Windows 使用独立主题实现,未把本次 macOS 原生壁纸行为宣称为 Windows 已支持。未找到可验证的关联 Issue,按 PR 描述的黑边问题审查。
Verification
- 本地 diff、程序包只读、功能矩阵及变更门禁、Agent Notes、测试稳定性静态检查、共享编辑器边界检查均通过。
- 当前 head 的 macOS CI 已通过;真实 WebKit 工作台测试已登记在 arm64 release-package 作业。
- Windows 的 Test real JDT on Windows 失败,Windows CI gate 随之失败。实际日志失败用例为
lithe_core::tests::git_patch_exchange::patch_metadata_can_list_an_oversized_export_before_selecting_a_small_subset,记录 16120ms;这是本 PR 未修改的 Rust Git 补丁测试,不把它归因为本次 Monaco 主题回归,也不把当前 CI 记作全部通过。 - 本次未运行完整构建、测试或原生 UI;没有生成新的编译缓存。代码缺陷依据当前 head 的调用链分析,未声称已在 Windows/macOS 实机复现。
Summary
改动范围集中,复用 Monaco 公开主题配置,代码、测试和说明一致。建议处理上述 Windows CI 失败并取得更新后的验证结果;当前 review 为 COMMENT,不代表批准或合并。
Owner
|
@Mucheen CI挂了 |
1lck
added a commit
that referenced
this pull request
Sep 29, 2026
* fix(windows): disable font ligatures in run output (#编号) (#959) * fix(windows): disable font ligatures in run output for literal log fidelity Geist Mono ships programming ligatures, so separator banners like '=====' rendered as solid double lines and '=>'/'!=' folded into single glyphs, which no longer matches the bytes the process actually emitted. Log viewers should stay literal: set font-variant-ligatures:none on the run output so every character is rendered individually. Copied text was always correct; only the display changed. * docs: record run and Maven output ligature verification --------- Co-authored-by: Lichenkang <2188718831@qq.com> * fix(macos): move plugin management into IDEA-style settings (#813) (#928) * fix(macos): move plugin management into IDEA-style settings (#813) * fix(macos): show only PHP in plugin settings (#813) * fix(macos): align settings background with workbench theme * style(macos): unify settings input control roles * fix(macos): align settings window behavior and control borders with IDEA * feat(macos): resize settings sidebars with bounded split handles * fix(macos): keep arrow cursor on settings controls * fix(macos): apply plugin drafts on settings OK and align focus styles * fix(macos): adjust settings plugin splitter bounds and drag style * fix(macos): guard plugin settings during apply * fix(macos): keep settings bound to opener and restore PHP install path * fix(macos): keep plugin apply bound to its settings session --------- Co-authored-by: Xiaoyumuxi <3075514079@qq.com> Co-authored-by: Lichenkang <2188718831@qq.com> * test(windows): cover Maven Run toolchain overrides and inheritance (#940) * feat(windows): 在设置中新增 Maven 配置页并统一三处 Maven 配置 * feat(windows): 在设置中新增 Maven 配置页并统一三处 Maven 配置 * feat(windows): 在设置中新增 Maven 配置页并统一三处 Maven 配置 * feat(windows): 在设置中新增 Maven 配置页并统一三处 Maven 配置 * fix: 补齐 Maven 设置矩阵并修复保存重试、检测竞态及仓库回退 * fix(windows): 恢复 Maven 生效配置解析 * fix(windows): make Maven settings detection bounded and accurate * `fix: 以 Maven 设置作为 Windows Run 启动路径的唯一来源` * fix: 修复合并后的平台功能矩阵冲突 * `fix: 以 Maven 设置作为 Windows Run 启动路径的唯一来源` --------- Co-authored-by: Jay <jay@sztus.com> Co-authored-by: Lichenkang <2188718831@qq.com> Co-authored-by: Jay <fan_jie@sonadora.com.cn> * fix(macos): 修复壁纸模式编辑器右侧黑边 (#943) Co-authored-by: Lichenkang <2188718831@qq.com> * 优化 macOS 设置窗口布局、控件及全局按钮样式 (#944) * style(macos): align settings panels with IntelliJ UI * style(macos): match IntelliJ settings dropdown popup * fix(macos): stabilize settings popup and accessibility * fix(macos): localize settings breadcrumb categories * feat(macos): organize keymap settings as action tree * style(macos): refine keymap settings tree controls * style(macos): align keymap toolbar icons and search field with IDEA * style(macos): preserve IntelliJ keymap icon colors and tree glyphs * style(macos): remove pressed dimming from borderless buttons * style(macos): hide keymap gear menu indicator * fix(macos): expose selected settings option to accessibility * fix(macos): use shared context menus in keymap settings * ci(windows): bound workspace commit integration test at 30 seconds * fix(macos): allow settings select trigger to close its popup * test(macos): cover settings select popup click sequence * fix(macos): label keymap toolbar controls for accessibility * docs: remove duplicate settings verification steps * docs: remove duplicate settings verification steps * docs: remove duplicate settings verification steps --------- Co-authored-by: Xiaoyumuxi <3075514079@qq.com> * fix(windows): polish title bar and loading icons (#971) * fix(windows): align window and loading icons * fix(windows): use standard service rescan icon * fix(windows): unify refresh icon mapping * fix(windows): limit refresh icon overrides to controls * fix(windows): wire command palette window actions * feat(windows): 改进标题栏菜单交互与项目图标布局 (#976) Co-authored-by: lick <2188718831@qq.com> * fix(maven): 让 Maven 设置真正作用于 JDT LS,并修复 Windows 依赖面板(#970) (#977) * fix(maven): 让 Maven 设置真正作用于 JDT LS,并修复 Windows 依赖面板(#970) Windows 依赖面板每次都报 “Unable to load Maven dependencies”:前端 invoke 按手工白名单分流,漏登记的 maven_create_dependency_output 等 5 个宿主命令 被 platform_invoke 当作未实现拒绝,字符串错误又被 store 换成通用提示。 改为按归属规则路由并用 main.rs 契约测试锁定,宿主错误统一包装成 Error。 第三方 import 标红来自 Maven 配置到不了 JDT LS:保存设置只标记重载, 重载又是重启 JDT LS,而 JDT LS 对 pom 未变的项目不重新解析;生成的 settings 路径固定,JDT LS 按路径判断变化因此看不见改动。现在: - settings 副本按内容哈希命名,放在会话 -data/.lithe/maven/ 内 - 新增 lsp.updateMavenConfiguration,设置变化发 didChangeConfiguration, 重新加载发 java/projectConfigurationsUpdate,两个平台都不再重启会话 - profile 任务期间的配置变更会在完成后自动补跑 - Maven 工具窗口展示 pom.xml 解析错误并发可跳转通知,移除误导的 “Maven configuration applied” Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> * fix(maven): preserve settings snapshots and queued JDT updates Serialize settings preparation and publication, isolate staging files, retain snapshots until workspace cleanup, and create Unix copies with private permissions. Apply newer profiles after failed or drained timed-out batches, retain pre-ready reload requests, and add regression tests. Update contracts, Agent Notes, feature matrix, and worktree resource exclusions. --------- Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * fix: 修复双端 HTML 浏览器打开与 Windows 更新状态 (#966) (#980) * fix: correct HTML browser launch and Windows update state (#966) * fix: address review findings on stale updates and missing HTML files * docs(readme): 顶部嵌入宣传片,产品截图默认展示 4 张 (#983) * docs(readme): 默认展示 4 张产品截图,其余折叠 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> * docs(readme): 在 README 顶部嵌入 Lithe 宣传片 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> --------- Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> * fix(editor): 统一双端文本判定并复用 Monaco properties 高亮 (#963) (#981) * fix(editor): unify Unicode text classification and properties support (#963) * test(editor): await original restore jobs in stale-result tests * fix(ci): budget Swift lanes for linked Core cold builds --------- Co-authored-by: dudylan <34180156+dudylan@users.noreply.github.com> Co-authored-by: arkleselect <166632698+arkleselect@users.noreply.github.com> Co-authored-by: Xiaoyumuxi <3075514079@qq.com> Co-authored-by: JayF211 <57852791+JayF211@users.noreply.github.com> Co-authored-by: Jay <jay@sztus.com> Co-authored-by: Jay <fan_jie@sonadora.com.cn> Co-authored-by: muchen <145200703+Mucheen@users.noreply.github.com> Co-authored-by: xtr-hub <3786329580@qq.com> Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
问题与原因
macOS 工作台启用壁纸和代码缩略图后,编辑器最右侧会出现贯穿页面的黑色竖条;打开 Agent 面板时,黑条会随编辑器边界左移。原因是宿主已将编辑器和缩略图背景设为透明,但没有指定 Monaco 概览标尺的背景。Monaco 在右侧缩略图启用时会为概览标尺补上默认分词背景色,形成这条不透明的竖条。
改动内容
editorOverviewRuler.background:壁纸模式保持透明,普通主题继续使用实体背景;保留缩略图及滚动功能。验证
./scripts/probe-macos-monaco.sh --workbench-tests通过;主题场景直接断言概览标尺在普通主题为实体色、壁纸主题为全透明像素。./.agents/skills/write-stable-tests/scripts/verify-test-stability.sh通过。./scripts/verify-agent-notes.sh、./scripts/verify-platform-feature-matrix.sh、./scripts/verify-platform-feature-matrix-change.sh upstream/preview HEAD通过。./scripts/verify-runtime-bundle-immutability.sh、node scripts/verify-editor-boundaries.mjs、git diff --check通过。后续 CI 修复
preview,按合并后的功能矩阵源数据重新生成 Markdown 与 CSV,解决 PR 的合并冲突。Test real JDT任务中的 JDT 集成测试已经通过;实际失败的是patch_metadata_can_list_an_oversized_export_before_selecting_a_small_subset。它要写入并检查超过 32 MiB 的真实文件,在 Windows runner 上触发了默认 15 秒的单测试超时(报告记录 16.12 秒),随后汇总 gate 跟着失败。git diff --check。当前 macOS 环境缺少 Cargo 与 PowerShell;推送后的 Windows CI 全部通过,原超时测试在报告中用时 2.331 秒、状态为 passed,Windows CI gate 通过。