Wrap mobile pull request diffs without horizontal panning #445

Closed
opened 2026-08-10 02:29:52 +00:00 by timmy · 0 comments
Owner

Problem

The in-app mobile review flow supports diff inspection and inline comments, but long source lines use a desktop-width min-width: max-content layout. Phone users must repeatedly pan horizontally before they can understand or comment on a line.

Slice

Add a thumb-reachable Wrap lines review preference that defaults on at phone widths, preserves stable old/new line gutters and inline-comment anchors, and can be disabled for whitespace-sensitive review. Persist the explicit choice across review sheets and reloads. Desktop remains nowrap by default.

Acceptance

  • At 390px, long added/removed/context lines wrap inside the sheet with no horizontal overflow and visible old/new gutters.
  • Tapping a wrapped row still anchors exactly one inline comment to its original old/new position.
  • The accessible toggle reports state, is at least 44px, and an explicit preference survives reopen/reload.
  • Disabling wrap restores whitespace-preserving horizontal inspection.
  • Existing review progress, offline drafts, queued submission, and desktop behavior remain intact.
  • Behavioral tests cover markup, persistence, responsive containment, and unchanged anchor metadata.

Evidence / non-duplication

frontend/dashboard.css currently forces .review-diff-line { min-width:max-content; } and .review-inline-target { white-space:pre; }. Existing review issues (#123, #125, #127, #129, #143, #165, #355, #419, #423) delivered loading, progress, drafts, handoff, inline comments, and offline submission; none addresses wrapped readability or mobile horizontal panning. No open issue or recent commit covers this behavior.

## Problem The in-app mobile review flow supports diff inspection and inline comments, but long source lines use a desktop-width `min-width: max-content` layout. Phone users must repeatedly pan horizontally before they can understand or comment on a line. ## Slice Add a thumb-reachable **Wrap lines** review preference that defaults on at phone widths, preserves stable old/new line gutters and inline-comment anchors, and can be disabled for whitespace-sensitive review. Persist the explicit choice across review sheets and reloads. Desktop remains nowrap by default. ## Acceptance - At 390px, long added/removed/context lines wrap inside the sheet with no horizontal overflow and visible old/new gutters. - Tapping a wrapped row still anchors exactly one inline comment to its original old/new position. - The accessible toggle reports state, is at least 44px, and an explicit preference survives reopen/reload. - Disabling wrap restores whitespace-preserving horizontal inspection. - Existing review progress, offline drafts, queued submission, and desktop behavior remain intact. - Behavioral tests cover markup, persistence, responsive containment, and unchanged anchor metadata. ## Evidence / non-duplication `frontend/dashboard.css` currently forces `.review-diff-line { min-width:max-content; }` and `.review-inline-target { white-space:pre; }`. Existing review issues (#123, #125, #127, #129, #143, #165, #355, #419, #423) delivered loading, progress, drafts, handoff, inline comments, and offline submission; none addresses wrapped readability or mobile horizontal panning. No open issue or recent commit covers this behavior.
timmy self-assigned this 2026-08-10 02:29:52 +00:00
timmy closed this issue 2026-08-10 02:39:39 +00:00
Sign in to join this conversation.
No Milestone
No project
No Assignees
1 Participants
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: stackchain/stackchain-dashboard#445
No description provided.