Skip to content

support multiple old pseudo elements for same name but different source node (#56479) - #56479

Closed
zeyap wants to merge 1 commit into
react:mainfrom
zeyap:export-D101237889
Closed

support multiple old pseudo elements for same name but different source node (#56479)#56479
zeyap wants to merge 1 commit into
react:mainfrom
zeyap:export-D101237889

Conversation

@zeyap

@zeyapzeyap commented Apr 16, 2026

Copy link
Copy Markdown
Contributor

Summary:

Changelog:

[General] [Fixed] - support multiple old pseudo elements for same name but different source node

We will need to track multiple old pseudo elements for same name but different source node when doing a series of shared transitions:

  1. go from component A to component B (A stays hidden with Activity but not unmounted)
  2. go back to A (B unmounted)
  3. hide A and show B again

A will lose its old pseudo element node, because at #1, B's old pseudo element node overrides A's (since they have the same vt name), and at #2, B's old node gets cleaned up. At #3, since createViewTransitionInstance won't be called for A again (react reconciler assumes the instance is only created once until a component is unmounted), there's no valid old node for A anymore.

Reviewed By: sammy-SC

Differential Revision: D101237889

@meta-clameta-claBot added the CLA Signed This label is managed by the Facebook bot. Authors need to sign the CLA before a PR can be reviewed. label Apr 16, 2026
@meta-codesync

Copy link
Copy Markdown

@zeyap has exported this pull request. If you are a Meta employee, you can view the originating Diff in D101237889.

…ce node (#56479)
Summary:
## Changelog:
[General] [Fixed] - support multiple old pseudo elements for same name but different source node
We will need to track multiple old pseudo elements for same name but different source node when doing a series of shared transitions: 1. go from component A to component B (A stays hidden with Activity but not unmounted)
2. go back to A (B unmounted)
3. hide A and show B again
A will lose its old pseudo element node, because at #1, B's old pseudo element node overrides A's (since they have the same vt name), and at #2, B's old node gets cleaned up. At #3, since createViewTransitionInstance won't be called for A again (react reconciler assumes the instance is only created once until a component is unmounted), there's no valid old node for A anymore.
Reviewed By: sammy-SC
Differential Revision: D101237889
@meta-codesyncmeta-codesyncBot changed the title support multiple old pseudo elements for same name but different source nodesupport multiple old pseudo elements for same name but different source node (#56479)Apr 17, 2026
@zeyap
zeyapforce-pushed the export-D101237889 branch from 4df6957 to 13372dcCompareApril 17, 2026 13:44
@react-native-bot

Copy link
Copy Markdown
Collaborator

This pull request was successfully merged by @zeyap in 370606d

When will my fix make it into a release? | How to file a pick request?

@react-native-botreact-native-bot added the Merged This PR has been merged. label Apr 17, 2026
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

CLA SignedThis label is managed by the Facebook bot. Authors need to sign the CLA before a PR can be reviewed.fb-exportedMergedThis PR has been merged.meta-exportedp: FacebookPartner: FacebookPartner

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants

@zeyap@react-native-bot