You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This PR adds a fixture story and VRT test to reproduce and guard against a visual regression where SelectPanel with anchorSide: 'outside-top' and async-loading content briefly flickers downward before repositioning upward.
The bug:
When content loads asynchronously inside an outside-top anchored SelectPanel:
Position recalculates → panel jumps to correct outside-top position
This causes a visible flicker
This PR:
Adds AutogrowAfterLoadingWithOutsideTopAnchor story to reproduce the issue
Adds a VRT test to catch regressions
Does not include a fix yet — this is a regression fixture only
Note: With CSS anchor positioning (primer_react_css_anchor_positioning flag enabled), the browser handles positioning natively and bottom: anchor(top) causes content to grow upward naturally — no flicker. The bug only affects the JS positioning fallback path.
Changelog
New
SelectPanel.examples.stories.tsx: Added AutogrowAfterLoadingWithOutsideTopAnchor story
Changed
None
Removed
None
Rollout strategy
None; this is a fixture/test-only change with no runtime impact
Testing & Reviewing
Open Storybook → SelectPanel → Examples → Autogrow After Loading With Outside Top Anchor
Click the button to open the panel
Observe the brief downward flicker before the panel repositions upward
With primer_react_css_anchor_positioning: true, the flicker should not occur
Merging this PR will not cause a version bump for any packages. If these changes should not result in a new version, you're good to go. If these changes should result in a version bump, you need to add a changeset.
This PR includes no changesets
When changesets are added to this PR, you'll see the packages that this PR includes changesets for and the associated semver types
👋 Hi, this pull request contains changes to the source code that github/github-ui depends on. If you are GitHub staff, test these changes with github/github-ui using the integration workflow. Check the integration testing docs for step-by-step instructions. Or, apply the integration-tests: skipped manually label to skip these checks.
To publish a canary release for integration testing, apply the Canary Release label to this PR.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
integration-tests: recommendedThis change needs to be tested for breaking changes. See https://arc.net/l/quote/tdmpakpmstaffAuthor is a staff member
1 participant
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Closes #
This PR adds a fixture story and VRT test to reproduce and guard against a visual regression where SelectPanel with
anchorSide: 'outside-top'and async-loading content briefly flickers downward before repositioning upward.The bug:
When content loads asynchronously inside an outside-top anchored SelectPanel:
This PR:
AutogrowAfterLoadingWithOutsideTopAnchorstory to reproduce the issueNote: With CSS anchor positioning (
primer_react_css_anchor_positioningflag enabled), the browser handles positioning natively andbottom: anchor(top)causes content to grow upward naturally — no flicker. The bug only affects the JS positioning fallback path.Changelog
New
SelectPanel.examples.stories.tsx: AddedAutogrowAfterLoadingWithOutsideTopAnchorstoryChanged
Removed
Rollout strategy
Testing & Reviewing
primer_react_css_anchor_positioning: true, the flicker should not occurMerge checklist