Background
Euro-Office/web-apps#167 fixed a row-inflation bug: non-spell-check rows in the "Set document language" dropdown, and the identical case in the doc-editor status-bar language menu, were inflated to ~191px/~180px by an empty inline <svg class="icon"> falling back to its 300×150 intrinsic size. The fix is a CSS rule; there is currently no automated test guarding it.
No visual/layout regression testing exists anywhere in this stack today — the two existing specs in e2e/tests/ (example-page.spec.ts, mobile-editor.spec.ts) only assert class/URL state, never boundingBox()/computed style. This would be the first of its kind, using the harness already wired up in e2e/playwright.config.ts + web-apps/.github/workflows/e2e.yml.
Proposal
Add a Playwright spec in e2e/tests/ that, against the built editor in the container:
- opens the "Set document language" dialog and asserts a non-spell-check row's height is small (collapsed, not ~191px)
- opens the doc-editor status-bar language menu and asserts the same for a non-spell-check entry (not ~180px)
This locks in the fix from web-apps#167 against silent regressions — e.g. a future template reformat breaking the :empty CSS match (whitespace-sensitive), which was flagged as a risk in that PR's review.
Related: web-apps#167, web-apps#165 (Euro-Office/web-apps#168 tracks hardening the template layer itself).
Background
Euro-Office/web-apps#167 fixed a row-inflation bug: non-spell-check rows in the "Set document language" dropdown, and the identical case in the doc-editor status-bar language menu, were inflated to ~191px/~180px by an empty inline
<svg class="icon">falling back to its 300×150 intrinsic size. The fix is a CSS rule; there is currently no automated test guarding it.No visual/layout regression testing exists anywhere in this stack today — the two existing specs in
e2e/tests/(example-page.spec.ts,mobile-editor.spec.ts) only assert class/URL state, neverboundingBox()/computed style. This would be the first of its kind, using the harness already wired up ine2e/playwright.config.ts+web-apps/.github/workflows/e2e.yml.Proposal
Add a Playwright spec in
e2e/tests/that, against the built editor in the container:This locks in the fix from web-apps#167 against silent regressions — e.g. a future template reformat breaking the
:emptyCSS match (whitespace-sensitive), which was flagged as a risk in that PR's review.Related: web-apps#167, web-apps#165 (Euro-Office/web-apps#168 tracks hardening the template layer itself).