fix: preserve block tooltip anchors during selection - #1221
Draft
vanilla-wave wants to merge 6 commits into
Draft
vanilla-wave wants to merge 6 commits into
vanilla-wave wants to merge 6 commits into
Conversation
Reviewer's GuideAdds an editor-aware popup integration that keeps Floating UI focus fallbacks outside the ProseMirror document while preserving block text-selection behavior, and backs the fix with comprehensive tooltip, focus, selection, deletion, scrolling, and visual regression coverage. File-Level Changes
Tips and commandsInteracting with Sourcery
Customizing Your ExperienceAccess your dashboard to:
Getting Help
|
vanilla-wave
marked this pull request as ready for review
September 9, 2026 21:42
vanilla-wave
marked this pull request as draft
September 10, 2026 16:37
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.
Selecting text inside nested editor blocks can make their toolbars flicker: Floating UI inserts a focus-return fallback beside its DOM reference, inside the ProseMirror document.
Use a shared
EditorPopupfor block toolbars and Markdown table cell controls. Focus management references the editor root while positioning references the selected block or cell. UIKit retains portals, placement, offsets, dismissal, and nested menus; no dependency versions or existing snapshots change.Preserve the existing selection behavior when a block toolbar opens. The plugin view defers that transaction until the current update completes and discards it if the view, document, selection, anchor, focus, or visibility changes. React rendering no longer dispatches PM transactions. Selecting a block whose toolbar is already open keeps the existing node selection.
Regression coverage includes the entire pointer gesture (observation ends explicitly after mouse-up and popup stability), repeated selection, DOM identity, clipping, scrolling, Markdown table commands and menu keyboard navigation, Escape/Tab focus, deletion followed by typing, legacy-root reentrancy, and stale work after selection changes or destruction.
Validation:
Related: floating-ui/floating-ui#3504
Summary by Sourcery
Preserve editor popup anchors and selection behavior while preventing nested updates during block and table toolbar interactions.
Bug Fixes:
Enhancements:
Tests: