Repository navigation
macOS Separator: put the rule 2pt inside the component, as AppKit's NSBox does - #6033
shai-almog wants to merge 2 commits into
Conversation
…SBox does Desktop theme fidelity (macos) has failed on master on DesktopSeparator: "widget silhouette on the native side only". AppKit's separator NSBox draws its 1px line centred in its own frame, on the tile's third row; ours had padding 0 and drew it on row 0, which the geometry mask's 2px edge trim discards. The 2pt moves from margin to padding, so a real layout paints the same pixels. Re-scoring the CI artifact with the rule on row 2: identical bboxes, 96.3%/97.0%, and FidelityGate passes at the workflow's epsilon. The yaml note blaming contrast was wrong and is corrected. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
@codex review |
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 0dacf29563
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
|
Developer Guide build artifacts are available for download from this workflow run:
Developer Guide quality checks: |
Native fidelity (Android, Material 3)54 pairs compared -- median 95.6%, worst 91.3% ( Distribution --
Geometry vs native (bbox offset / size ratio / center offset / corner radius) -- gated separately from the visual score
Side-by-side comparisons (worst first)
|
…row on macOS only Margin and padding are rounded to pixels separately, so 0.57mm + 0.53mm grew each side by a pixel at 72/120/168/216/264 dpi (a 1x Mac among them). 0.42mm + 0.64mm reproduces 1.1mm's pixels at every 24 dpi step from 72 to 288 and still gives AppKit's 2pt of padding at 1x, 96 dpi and 2x. DesktopSeparator gets platforms: macos: on Fluent and Adwaita both sides are empty after the edge trim, and a baseline refresh would record that meaningless score. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
@codex review |
|
Codex Review: Didn't find any major issues. Nice work! Reviewed commit: ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
If Codex has suggestions, it will comment; otherwise it will react with 👍. Codex can also answer questions or update the PR. Try commenting "@codex address that feedback". |
✅ Continuous Quality ReportTest & Coverage
Static Analysis
Generated automatically by the PR CI workflow. |
Native fidelity (ios-27-metal)68 pairs compared -- median 94.6%, worst 74.5% ( Distribution --
Geometry vs native (bbox offset / size ratio / center offset / corner radius) -- gated separately from the visual score
Side-by-side comparisons (worst first)
|
Native fidelity (iOS Modern, Metal)68 pairs compared -- median 95.0%, worst 83.5% ( Distribution --
Geometry vs native (bbox offset / size ratio / center offset / corner radius) -- gated separately from the visual score
Side-by-side comparisons (worst first)
|




















































































































































































































































































































































































Desktop theme fidelity (macos) has failed on master on
DesktopSeparator, with "widget silhouette on the native side only".Cause. AppKit's separator NSBox draws its 1px line centred in its own frame, which puts it on the tile's third pixel row. The macOS theme's
Separatorhad padding 0 and drew the rule on row 0. The geometry mask trims 2px off every tile edge (ProcessScreenshots.GEOMETRY_EDGE_TRIM), so our row was discarded and the native one was kept. On Fluent and Adwaita both sides draw on row 0, so both are trimmed and the row reads as empty on both sides, which the gate accepts.Fix.
native-themes/macos-aqua/theme.css:Separatormoves 2pt from margin to padding (margin0.57mm, padding0.53mm, light and dark). Margin and padding are both transparent and the total stays 9px, so a real layout paints the same pixels; only the rule's position within the component's own bounds changes.Themes/MacOSAquaTheme.res: regenerated with the in-tree css-cli. That jar reproduces the committed.resbyte for byte from the unchanged CSS, so only this edit is in the diff.fidelity-tests.yaml: the note blaming low contrast was wrong (every line is 13 to 42 levels off its backdrop, past the mask's threshold of 10) and is corrected.Verification.
FidelityGateat the workflow's epsilon (2.0) goes from rc=20 to OK, with 88 pairs at or above baseline.DesktopNativeThemeContentTestandDesktopComponentsTestpass (33/33).🤖 Generated with Claude Code