Skip to content

fix(ui): restore compact toolbar in WebKit without clipping native controls - #32

Merged
christophersesugh merged 6 commits into
mainfrom
fix/webkit-toolbar-compact-layout
Nov 12, 2026
Merged

christophersesugh merged 6 commits into
mainfrom
fix/webkit-toolbar-compact-layout

Conversation

@christophersesugh

@christophersesugh christophersesugh commented Nov 12, 2026 •

Copy link
Copy Markdown
Contributor

Motivation

Release QA in #31 reproduced a WebKit-only compact toolbar failure: at a 1600×900 viewport the bottom toolbar measured 56px against the existing <55px acceptance assertion. The independent QA geometry test found no overlapping or escaping controls; the height discrepancy should not be treated as proven clipping.

Implementation

  • Reduce the outer vertical padding of the shared toolbar from 6px to 4px on each side. The existing native select dimensions, font metrics, hit targets and semantic controls are unchanged; reducing the bar's spacing makes room for WebKit's taller native select without forcing its height down or disabling the check.
  • Extend the existing compact toolbar regression to verify that every interactive control remains fully within the toolbar's vertical bounds, with a 1px rounding tolerance. Replace the Chromium-specific 34px exact native chapter-select height assumption with an observed 34–42px native-control range; keep the strict <55px toolbar-height assertion unchanged.
  • Run the same complete browser suite in Firefox and WebKit via a read-only QA workflow, in addition to regular Chromium CI. This workflow and browser-selector config intentionally match test(qa): verify post-v0.0.2 release candidate across browsers and record gates #31; if this fix merges first, Git should recognize those identical changes when test(qa): verify post-v0.0.2 release candidate across browsers and record gates #31 is later refreshed.
  • Record the change in the unreleased changelog.

Verification

Verified on fix head 4392eaa806a4b031013c667adaf71fb7630917ed:

  • Standard Throughline CI #43217293735: PASS — 235/235 unit tests (33 files), 82/82 Chromium tests (14 files), typecheck, source/license audits, preview build, package build, packed Vite/browser, framework, and Markdown consumer audits.
  • Cross-browser QA #43217293007: PASS — 82/82 Firefox and 82/82 WebKit browser tests. The original strict compact-height assertion, new vertical control bounds, and remaining toolbar tests all pass.
  • Earlier WebKit diagnostic #43216902930 failed only at the chapter-select exact-height assumption: WebKit's native select is 42px rather than Chromium/Firefox's 34px. The compact-height and added containment checks had already passed. The test now accepts only the measured native-size range while retaining the intended layout invariants.
  • No separate local dependency install, manually inspected screenshot, human device/assistive-technology test, real-world performance baseline or live documentation application integration is claimed.

Risk and compatibility

  • Visual vertical spacing decreases by 4px in all layouts; no compiler, trace, package export, playback semantics, native control height or CSS custom property is changed.
  • Compactness and bounds are covered by browser tests, but human review at high text zoom and real Safari/device testing is still needed.

Relationship to #31 and release gates

This is a separate implementation PR because #31 is intentionally verification-only. It only addresses QA-04; QA-01/02/03/05/06/07 (human comprehension, physical-device audio/accessibility, live docs app integration, calibrated performance, design acceptance and publication/source-rights review) remain unverified or maintainer-controlled, not software defects claimed fixed here.

No signing, approval, merge, package publication or release is requested.

@christophersesugh christophersesugh left a comment

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

QA re-review — COMMENT only, not approval.

Scope: PR #32 head 4392eaa806a4b031013c667adaf71fb7630917ed, relative to main 26d4e81756e28a6c28ac9f0c4b3dbc2e86b6f8c9. Inspected the full changed-file patch (CSS, toolbar browser test, browser matrix/config, changelog) and the actual GitHub Actions job logs.

Original issue: WebKit measured a 56px toolbar against the original strict <55px check. The candidate decreases outer toolbar block padding 6px -> 4px each side, retains native control height, retains <55px, adds per-control vertical containment, and permits the independently observed native chapter-select 34–42px range. The intermediate run exposed the formerly Chromium-specific 42px vs 34px assertion; the final revision addresses that assumption without dropping compactness or containment checks. The change is additive to testing and limited in CSS scope; no public API, compiler or trace contract change.

Checks verified on exact fix head: Standard CI #43217293735 PASS: 235 unit (33 files), 82 Chromium UI (14 files), preview/typecheck, package/build, licenses, packed consumers and framework/Markdown hosts. Cross-browser QA #43217293007 PASS: Firefox 82/82, WebKit 82/82. No failure found by these checks in the scoped WebKit fix.

Residual limits: These are headless Linux browser regressions, not a visual sign-off in Safari/macOS/iOS, high text zoom, screen readers, actual audio hardware or physical touch devices. Check those before making broader accessibility/release claims.

Relationship to #31: #31 still has head fa38735a, including the old red WebKit evidence and an additional geometry regression that #32 does not contain. If #32 is merged after maintainer review, rebase/update #31, reconcile duplicated browser-config/workflow changes, rerun the combined 83-test browser suite in Chromium, Firefox and WebKit, and revise the report from FAIL only if those exact CI results justify it. Separately outstanding V-10, docs app, controlled performance, governance/rights and release process gates remain open.

Review outcome: Focused fix is supported by passing automated evidence; no release clearance or merge approval is expressed.

@christophersesugh
christophersesugh merged commit 9f78f88 into main Nov 12, 2026
3 checks passed
@christophersesugh
christophersesugh deleted the fix/webkit-toolbar-compact-layout branch November 12, 2026 15:34
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