Repository navigation
fix(ui): preserve picker v2 shadow focus - #472
Conversation
🦋 Changeset detectedLatest commit: 80117ed The changes in this PR will be included in the next version bump. This PR includes changesets to release 4 packages
Not sure what this means? Click here to learn what changesets are. Click here if you're a maintainer who wants to add another changeset to this PR |
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
Assert the version list viewport overflows before checking Tab order, cover outside dismissal from the Languages screen, restore a pill-shape check for the language search input, and narrow the changeset wording. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
camrun91
left a comment
There was a problem hiding this comment.
Thanks, @abharms! Both fixes are correct, and each one has a story test that fails without it. The CI is green. I have 3 required changes. I put 2 inline comments on the diff. The item below is in a file that is not in the diff.
1. Required: update the Safari and VoiceOver record
docs/shadow-dom-isolation-plan.md:207
The plan says that focus enters on the English selector and that Tab moves next to Close. This PR changes the focus order. Now focus goes to the dialog first, then Close, search, the language entry, and the first version. The rollout policy (docs/shadow-dom-rollout-policy.md:14 and :122) says that a focus change needs a new run in actual Safari. Playwright WebKit does not count.
Please run the 2 version picker journeys again in actual Safari, with the VoiceOver check, and update this row. If you cannot do the run now, please record in the plan that a rerun is pending, and link a ticket.
When these items are done, I can approve. Thank you!
|
Thanks for the careful review. I addressed both inline findings in 80117ed: rapid reopen now uses the same guarded, Safari-safe dialog focus scheduler as the chapter picker, and the Firefox scroll-region workaround now has an inline explanation. All 9 picker Shadow DOM journeys pass in Chromium, Firefox, and WebKit; 32 picker unit tests, type-check, and lint also pass. I do not think the actual-Safari/VoiceOver rerun or a rewrite of the October validation row is required for this PR:
The new focus code deliberately reuses the already validated chapter-picker scheduling pattern, including request invalidation, connection/state guards, and the Safari double-animation-frame delay. If there is a different policy trigger you believe applies to this component-local change, please point me to that exact requirement and I will revisit it. |
Summary
Verification


Confidence Score: 5/5
The PR appears safe to merge; no new actionable defects were found.Summary
Updates picker focus and browser journeys for the v2 screen flow.
Reviews (6) · Last reviewed commit: "fix(ui): normalize picker reopen focus" · Reviewed by Greptile