Skip to content

fix: sweep sub-44px icon buttons tree-wide and widen tap-target guard (#5904) - #6079

Merged
atomantic merged 1 commit into
mainfrom
claim/issue-5904
Sep 3, 2026
Merged

fix: sweep sub-44px icon buttons tree-wide and widen tap-target guard (#5904)#6079
atomantic merged 1 commit into
mainfrom
claim/issue-5904

Conversation

@atomantic

Copy link
Copy Markdown
Owner

Summary

Sweeps the remaining sub-44px icon buttons outside MeatSpace the way #5901 did, and widens the tap-target guard to the whole client tree in the same PR.

  • Every icon-only <button> with tight p-0.5/p-1/p-1.5 padding now carries min-h-[44px] min-w-[44px] inline-flex items-center justify-center (~230 buttons across ~120 files). Sub-44 explicit mins (min-h-[24/28/32/36/40px]) are raised to the floor rather than stacked beside it. Icon size= values are untouched.
  • Action rows holding two or more adjacent fixed buttons widen from gap-1 to gap-2 (Loops run/stop/delete, Review queue/item rows, EntryCard-style action rows, etc.).
  • Also fixed the same shape with dynamic className templates the guard skips (lock toggles, feedback thumbs, star/pin toggles, mute/review toggles) found by hand in the touched rows.
  • a11yConventions.test.js: the #5703 tap-target rule moves from src/components/meatspace/ to the whole tree (same padding-shape filter and self-probe, same isIconOnlyButton definition). Sibling-owned SongBook surfaces (pages/SongBook.jsx, pages/SongBookViewer.jsx, components/songbook/) are excluded for the parallel change that owns them.

Left alone, deliberately: text-label buttons, icon buttons with no padding class or roomy p-2+ padding, icon-only anchors, the absolute top-0.5 right-0.5 pin-star overlay on CanonCard reference thumbnails (a per-site overlay-density call), and the sibling-owned SongBook/PracticeLogger tree plus client ImageGen init-image code.

Closes #5904

Test plan

  • npx vitest run src/a11yConventions.test.js — 50/50 pass (widened guard reports zero offenders).
  • Full client suite (npm test in client/): 832 files passed, 10161 tests passed, 2 skipped.
  • Updated VideoTimelineLanes.test.jsx (28px remove-target assertion → 44px floor); collocated tests of all 62 touched components with test files pass.
  • Local mtplx reviewer unavailable in this environment (no model configured) — see review-blocked comment below.

…#5904)

Every icon-only button with tight p-0.5/p-1/p-1.5 padding now carries
min-h-[44px] min-w-[44px] inline-flex items-center justify-center, and
action rows holding two of them widen from gap-1 to gap-2. Icon sizes
are untouched. The a11yConventions tap-target rule moves from
src/components/meatspace/ to the whole client tree (same padding-shape
filter and self-probe); sibling-owned SongBook surfaces are excluded
for the parallel change that owns them.
@atomantic

Copy link
Copy Markdown
Owner Author

Review status: review-blocked. The mtplx local reviewer (effort low) returned no verdict: "No model configured for mtplx reviewer — set one on the Settings → Code Reviewers page." Code and tests are otherwise shippable — full client suite green (832 files / 10161 tests). Leaving the PR open for human/CI review.

@atomantic
atomantic merged commit 5ad0cad into main Sep 3, 2026
12 checks passed
@atomantic
atomantic deleted the claim/issue-5904 branch September 3, 2026 15:35
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.

Sweep the remaining sub-44px icon buttons outside MeatSpace and widen the tap-target guard to the whole client tree

1 participant