Phone hit: settings B, auth and verification icon buttons #136

Merged
void merged 2 commits from void/phone-hit-settings-b into dev 2026-11-13 12:49:59 +00:00
Member

Group 5 of the IconButton phone-hit audit. Every button gets PhoneHit (44 px hit area on phones, nothing drawn changes), pinned by src/app/phoneHit.settingsB.test.ts.

file line drawn variant reason
features/settings/account/Profile.tsx 188 32 PhoneHit Remove Avatar dialog close, alone in the header
features/settings/account/Profile.tsx 275 26 PhoneHit clear button in the display-name Input after, alone; folds Input does not clip
features/settings/account/IgnoredUserList.tsx 69 26 PhoneHit same, user-id Input
features/settings/devices/Verification.tsx 290 26 PhoneHit options menu; its only neighbour is a status badge (not tappable)
features/settings/devices/DeviceTile.tsx 290 32 PhoneHit chevron (Icon 50 = 16 px + 2x8) in the tile's before slot, alone
pages/auth/ServerPicker.tsx 131 32 PhoneHit server menu chevron in the Input after, alone
components/BackupRestore.tsx 179 26 PhoneHit menu button; neighbour is a status text span
components/DeviceVerification.tsx 264 32 PhoneHit dialog close, alone
components/DeviceVerificationSetup.tsx 304, 339 32 PhoneHit dialog closes, alone

Skipped: none (all drawn sizes are 26 to 32 px, all render on phones). No allow-list entries: all sizes are derivable, and plain PhoneHit has no number for expectSizeTie to tie.

Audit corrections: none to variants; the audit's first-draft sizes all matched the source.

Unmeasured on a real phone: the hit areas themselves (the 44 px ::after overlapping the Input edge for the three Input-clear and server-chevron buttons, and the dialog headers' padding). Vitest checks classes and the size tie, not rendering.

Tests: phoneHit.settingsB, phoneTapTargets and phoneHitTestKit pass; eslint clean on changed files (2 pre-existing warnings), prettier clean. Mutation checks (variant swapped to Spread32): BackupRestore, ServerPicker, DeviceTile each die; removing the class from DeviceVerification dies.

🤖 Generated with Claude Code

Group 5 of the IconButton phone-hit audit. Every button gets `PhoneHit` (44 px hit area on phones, nothing drawn changes), pinned by `src/app/phoneHit.settingsB.test.ts`. | file | line | drawn | variant | reason | |---|---|---|---|---| | features/settings/account/Profile.tsx | 188 | 32 | PhoneHit | Remove Avatar dialog close, alone in the header | | features/settings/account/Profile.tsx | 275 | 26 | PhoneHit | clear button in the display-name Input `after`, alone; folds Input does not clip | | features/settings/account/IgnoredUserList.tsx | 69 | 26 | PhoneHit | same, user-id Input | | features/settings/devices/Verification.tsx | 290 | 26 | PhoneHit | options menu; its only neighbour is a status badge (not tappable) | | features/settings/devices/DeviceTile.tsx | 290 | 32 | PhoneHit | chevron (Icon 50 = 16 px + 2x8) in the tile's `before` slot, alone | | pages/auth/ServerPicker.tsx | 131 | 32 | PhoneHit | server menu chevron in the Input `after`, alone | | components/BackupRestore.tsx | 179 | 26 | PhoneHit | menu button; neighbour is a status text span | | components/DeviceVerification.tsx | 264 | 32 | PhoneHit | dialog close, alone | | components/DeviceVerificationSetup.tsx | 304, 339 | 32 | PhoneHit | dialog closes, alone | Skipped: none (all drawn sizes are 26 to 32 px, all render on phones). No allow-list entries: all sizes are derivable, and plain PhoneHit has no number for expectSizeTie to tie. Audit corrections: none to variants; the audit's first-draft sizes all matched the source. Unmeasured on a real phone: the hit areas themselves (the 44 px ::after overlapping the Input edge for the three Input-clear and server-chevron buttons, and the dialog headers' padding). Vitest checks classes and the size tie, not rendering. Tests: phoneHit.settingsB, phoneTapTargets and phoneHitTestKit pass; eslint clean on changed files (2 pre-existing warnings), prettier clean. Mutation checks (variant swapped to Spread32): BackupRestore, ServerPicker, DeviceTile each die; removing the class from DeviceVerification dies. 🤖 Generated with [Claude Code](https://claude.com/claude-code)
Phone hit: PhoneHit on the settings B, auth and verification icon buttons
All checks were successful
Build pull request / Build pull request (pull_request) Successful in 3m44s
32dc46c21f
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Merge branch 'dev' into void/phone-hit-settings-b
All checks were successful
Build pull request / Build pull request (pull_request) Successful in 3m50s
145e268894
void merged commit d6a6e300a4 into dev 2026-11-13 12:49:59 +00:00
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
GameCult/Ratatoskr!136
No description provided.