fix(web): portal the create-vault dialog out of the transformed sidebar - #350
Merged
Conversation
The dialog rendered inside the sidebar aside, whose transform (mobile drawer slide) makes it the containing block for fixed descendants, so the overlay dimmed and centered within the sidebar instead of the viewport. Portal to document.body, matching ConfirmDialog.
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
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Problem
Opening New vault from the sidebar rendered the dialog centered inside the sidebar with only the sidebar dimmed, instead of a viewport-centered modal over a full-screen scrim.
Cause
CreateVaultDialogmounts inside the sidebar<aside>, which carriestransform/translate-x-*classes for the mobile drawer. A transformed ancestor becomes the containing block forposition: fixeddescendants, so thefixed inset-0overlay collapses to the aside's box. Latent since the dialog was introduced; ConfirmDialog had the identical bug and was fixed by portaling in 1.24.1.Fix
createPortal(..., document.body), exactly matching the ConfirmDialog pattern. No visual or behavioral change beyond correct positioning; Escape/backdrop-close and focus behavior are untouched.Typecheck clean, 219 web unit tests pass.