Skip to content

feat(settings): add "Skip for now" to the v2 pairing QR page - #21270

Merged
dschom merged 1 commit into
mainfrom
FXA-14523
Sep 21, 2026
Merged

dschom merged 1 commit into
mainfrom
FXA-14523

Conversation

@dschom

@dschom dschom commented Sep 18, 2026

Copy link
Copy Markdown
Contributor

Because

  • The pairing QR card is one of several promos a sync sign-in can land on, and the only ways off it were to pair or to leave the site.
  • Users who open "add a device" themselves can change their mind and need the same exit.
  • Product asked for a dtm_desktop Glean event on that exit.

This pull request

  • Adds a "Skip for now" button below the QR card on /pair/authority/scan_qr that closes the pairing channel and navigates to /settings.
  • Adds the dtm_desktop.qr_skip Glean event and records it on skip.
  • Renders the card from the page itself so the button can sit under it, matching the Figma.
  • Covers the button, channel teardown, navigation and metric in the page, container and Glean tests.

Issue that this pull request solves

Closes: FXA-14523

Checklist

Put an x in the boxes that apply

  • My commit is GPG signed.
  • If applicable, I have modified or added tests which pass locally.
  • I have added necessary documentation (if appropriate).
  • I have verified that my changes render correctly in RTL (if appropriate).
  • I have manually reviewed all AI generated code.

How to review (Optional)

  • Key files/areas to focus on: ScanQR/container.tsx (skip handler), ScanQR/index.tsx (card rendered outside AppLayout)
  • Suggested review order: yaml → web/index.tslib/glean/index.tsScanQR/*
  • Risky or complex parts: none; the skip tears down the channel the same way the failure path already does

Screenshots (Optional)

FXA-14523 — "Skip for now" below the QR card (Storybook, Pages/Pair2/Authority/ScanQR/Default)

Desktop Mobile (390px)
After: desktop QR card with Skip for now button After: mobile QR page with Skip for now button

Other information (Optional)

  • The ticket names the metric dtm_desktop.QR_skip; Glean requires lowercase snake_case, so it is dtm_desktop.qr_skip.
  • The ticket says "all v2 QR code pages". The authority scan_qr page is the only v2 screen that shows a QR code, so it is the only one changed.

Because:

- The pairing QR card is one of several promos a sync sign-in can land
  on, and the only ways off it were to pair or to leave the site.
- Users who open "add a device" themselves can change their mind and need
  the same exit.

This commit:

- Adds a "Skip for now" button below the QR card on
  /pair/authority/scan_qr that closes the pairing channel and goes to
  /settings.
- Adds the dtm_desktop.qr_skip Glean event and records it on skip.
- Renders the card from the page itself so the button can sit under it.
- Covers the button, channel teardown, navigation and metric in the page,
  container and Glean tests.

Closes #FXA-14523
@dschom
dschom marked this pull request as ready for review September 18, 2026 23:55
@dschom
dschom requested review from a team as code owners September 18, 2026 23:55
return <ScanQR {...{ qrCodeValue }} />;
const onSkip = () => {
GleanMetrics.dtmDesktop.qrSkip();
// Skipping ends the flow, so the channel goes with it. `destroy()` drops

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

👍🏽

description: The value proposition experiment branch shown to the user
type: string

dtm_desktop:

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What does dtm stand for?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

desktop to mobile

@dschom
dschom merged commit d3ba14c into main Sep 21, 2026
18 of 20 checks passed
@dschom
dschom deleted the FXA-14523 branch September 21, 2026 18:25
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.

3 participants