Keep the mobile review handoff working when popups are blocked #143

Closed
opened 2026-08-06 22:23:22 +00:00 by timmy · 0 comments
Owner

Problem

The mobile review handoff awaits clipboard access before opening Gitea and ignores a blocked window.open(). A reviewer can finish notes, see “Opening Gitea…”, and remain stranded.

Scope

Reserve the destination synchronously, navigate it only after copy succeeds, close it on copy failure, and expose a touch-sized direct Gitea fallback when popup reservation is blocked. Prevent duplicate pending handoffs.

Acceptance

  • Destination window is reserved before an unresolved clipboard promise settles.
  • Successful copy navigates the reserved window and reports success.
  • Blocked popup reports the truth and reveals a 44px direct Gitea link while preserving copied feedback.
  • Failed copy closes the reserved window and retains selectable feedback.
  • Repeated taps while pending perform one handoff.
  • Focused behavioral tests and full suite pass.
## Problem The mobile review handoff awaits clipboard access before opening Gitea and ignores a blocked `window.open()`. A reviewer can finish notes, see “Opening Gitea…”, and remain stranded. ## Scope Reserve the destination synchronously, navigate it only after copy succeeds, close it on copy failure, and expose a touch-sized direct Gitea fallback when popup reservation is blocked. Prevent duplicate pending handoffs. ## Acceptance - Destination window is reserved before an unresolved clipboard promise settles. - Successful copy navigates the reserved window and reports success. - Blocked popup reports the truth and reveals a 44px direct Gitea link while preserving copied feedback. - Failed copy closes the reserved window and retains selectable feedback. - Repeated taps while pending perform one handoff. - Focused behavioral tests and full suite pass.
timmy self-assigned this 2026-08-06 22:23:22 +00:00
timmy closed this issue 2026-08-06 22:26:13 +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#143
No description provided.