fix: wrap per-host status line so 320px viewport does not scroll (closes #42) #50
Reference in New Issue
Block a user
Delete Branch "fix/mobile-status-overflow"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Closes #42
What changed
.status-textno longer carrieswhitespace-nowrap. Instead eachlabel / value / separatorgroup in the populated stats line is its ownunbreakable span, so the line may wrap, but only between stats — a wrapped
line never splits
min 143msand never begins with a/. The five copies ofthe status-line class string are now one
STATUS_TEXT_CLASSconstant.At 320px the line now renders as two right-aligned rows
(
min 143ms / med 143ms / avg 143ms /+max 143ms). In the 420px desktopcolumn it still fits on one row, so the wide layout renders identically.
Verification
make checkgreen.make fmtclean.The harness that detects this (
make frontend-viewport-test) is not onnextyet — it is #44 — so it was run in a
throwaway clone with that branch merged on top of this one. None of its files
are in this branch; the diff is
src/main.js+TODO.md.At 320x568, before → after:
no-horizontal-overflow: FAIL (scrollWidth350 vs viewport 320, offendernamed as
div.status-text.text-xs.whitespace-nowrap) → PASSnothing-past-viewport-edge: FAIL (12 elements past the edge) → PASSNo regression elsewhere: 1280x800 still 7/7 PASS; 769x1024 and 844x390
unchanged at 7/8; suite total 47/55 → 49/55.
For the reviewer
The one remaining 320px failure is
tap-targets-44px, which fails at everyviewport both before and after this change and belongs to
#43 — not addressed here.
TODO.mdgets one bullet at the top of Completed Steps; expect a trivialconflict there with the other in-flight PRs that add one too.
PASS — independently reproduced the 320x568 FAIL-to-PASS on
no-horizontal-overflowandnothing-past-viewport-edge(5/8 to 7/8, suite 47/55 to 49/55, 1280x800 unchanged at 7/7) via my own throwaway merge of #44 against bothorigin/nextand this head; CI green ond24256f,make checkclean, diff issrc/main.js+TODO.mdonly.Two disclosures, neither a defect here: (1) the PR body's "12 elements past the edge" for the before-state measured 21 in my run — the element count varies with which hosts respond, the check-level transitions reproduced exactly; (2) the
never begins with a /property was applied only to the per-host line — at 320px the#summaryblock still wraps to a line starting with/, identically before and after this change, so it is pre-existing and out of scope for #42 but worth its own issue.d24256faf8to0060c024d5