Skip to content

[pull] main from react:main - #635

Merged
pull[bot] merged 8 commits into
code:mainfrom
react:main
Aug 12, 2026
Merged

[pull] main from react:main#635
pull[bot] merged 8 commits into
code:mainfrom
react:main

Conversation

@pull

@pull pull Bot commented Aug 12, 2026

Copy link
Copy Markdown

See Commits and Changes for more details.


Created by pull[bot] (v2.0.0-alpha.4)

Can you help keep this open source service alive? 💖 Please sponsor : )

…7160)

Removing an unregistered listener used splice(-1), which deleted the
last tracked entry and left the real handler stuck on DOM children.
focus() passes through portals as it attempts focus down the fiber tree.
blur() exited early based on a containment check, causing it to stop at
portals.

The result could be a focused element that cannot be blurred.

Follow up to #37125, which made
blur() apply recursively to be consistent with focus().
Fixes a bug where `compareDocumentPosition` fiber traversal would stop
searching after an empty Fragment fiber. Also affects `scrollIntoView`
…pty portals (#37163)

Accept documentElement in the CONTAINS fiber fallback when there is no
React fiber, and position empty portaled fragments against the portal
container instead of the React host parent.
)

Commit and delete previously skipped TEXT_NODE, so listeners added
before a text child mounted never reached it. Match addEventListener.
…7165)

dispatchEvent appends a temporary Text node to the fragment's nearest
host parent, but a Document can't contain Text, so createRoot(document)
threw HierarchyRequestError whenever the fragment had a listener or the
event didn't bubble.

Use a Comment node for Document containers: it is a legal document child
and sits at the fragment's own position, unlike documentElement, which
would put the target inside the fragment and fire its listeners twice.
#37166)

Commit-time fragment ancestry stopped at HostPortal via isHostParent, so
a child added after listeners were registered never received them even
though existing portal siblings did. Collect fragment parents past
portals and other non-HostComponent host parents so commit bookkeeping
matches HostComponent/HostRoot fragment ancestry.
#37167)

Just a small refactor to consolidate FragmentInstance helpers into one
module
@pull pull Bot locked and limited conversation to collaborators Aug 12, 2026
@pull pull Bot added the ⤵️ pull label Aug 12, 2026
@pull
pull Bot merged commit 22e4f99 into code:main Aug 12, 2026
@pull
pull Bot deployed to npm August 12, 2026 19:30 Active
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant