Phone: 44 px hit areas for the chat path's remaining icon buttons, and tests that pin them #127
Loading…
Reference in a new issue
No description provided.
Delete branch "void/phone-hit-areas-2"
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?
Follow-up of #125. Not merged, not deployed.
Fixed (PhoneHit pattern): MessageEditor (2, Spread32: neighbours), RoomNavItem (2, Spread32), MembersDrawer (close, scroll-to-top), ReactionViewer, RoomPinMenu (unpin, close), RoomViewTyping, CallChatView, JumpToTime (all plain PhoneHit: alone in their row).
Tests (src/app/phoneTapTargets.test.ts, 18 -> 30): each file's IconButtons in source order carry the exact variant, the name is imported from styles/PhoneHit.css, and PasswordInput, Desk, SkyStateControl, PasswordLoginForm (no test before) are listed. The ::after rule now also pins
content: "".Mutation check (each mutant reverted after): Spread32->PhoneHit in MessageEditor, class dropped in JumpToTime and Desk, Room26->Spread32 in Message, ::after width/height 44->40, position, transform, spread margin /2->/4, media query 750->900: all killed. Removing
contentSURVIVED, so that assertion was added and the mutant is now killed.Not measured: real-phone rendered size and tap behaviour (no browser/phone here; tests read emitted CSS and source only); the 9 px block margin of PhoneHitRoom26 inside the overflow:hidden options Menu; row growth in RoomNavItem (+12 px per button) on a narrow nav; whether the Spread margins crowd MessageEditor's toolbar at 320 px. Not audited for fixing: ~75 other files with IconButtons outside the chat path (settings, dialogs, editor Toolbar, call controls, lobby), listed by
grep -rL PhoneHiton<IconButtonfiles; most are not phone-reachable-critical but untested. tsc here shows only matrix-js-sdk type errors from the borrowed node_modules; eslint 0 errors.🤖 Generated with Claude Code