-
Notifications
You must be signed in to change notification settings - Fork 46.9k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat[Fabric/Paper]: support isChildPublicInstance api method #27783
Merged
+62
−0
Conversation
This file contains 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
facebook-github-bot
added
CLA Signed
React Core Team
Opened by a member of the React Core Team
labels
Dec 4, 2023
hoxyq
force-pushed
the
react-native/ancestors-api
branch
from
December 4, 2023 14:20
9cd7de1
to
852de7a
Compare
Comparing: 87cb0bf...61f781b Critical size changesIncludes critical production bundles, as well as any change greater than 2%:
Significant size changesIncludes any change greater than 0.2%: Expand to show
|
rubennorte
approved these changes
Dec 4, 2023
hoxyq
pushed a commit
to hoxyq/react-native
that referenced
this pull request
Dec 4, 2023
…ublicInstance Summary: Changelog: [Internal] This is the preprequisite for facebook/react#27783 Reviewed By: rubennorte Differential Revision: D51808831
hoxyq
force-pushed
the
react-native/ancestors-api
branch
2 times, most recently
from
December 4, 2023 15:20
2d7594f
to
62e168a
Compare
hoxyq
changed the title
feat[Fabric/Paper]: support getIsOneInstanceAncestorOfAnother api method
feat[Fabric/Paper]: support isChildPublicInstance api method
Dec 4, 2023
rubennorte
reviewed
Dec 4, 2023
hoxyq
force-pushed
the
react-native/ancestors-api
branch
from
December 4, 2023 15:53
62e168a
to
61f781b
Compare
hoxyq
pushed a commit
to hoxyq/react-native
that referenced
this pull request
Dec 4, 2023
…ublicInstance (facebook#41786) Summary: Changelog: [Internal] This is the preprequisite for facebook/react#27783 Reviewed By: rubennorte Differential Revision: D51808831
hoxyq
pushed a commit
to hoxyq/react-native
that referenced
this pull request
Dec 4, 2023
…ublicInstance (facebook#41786) Summary: Changelog: [Internal] This is the preprequisite for facebook/react#27783 Reviewed By: rubennorte Differential Revision: D51808831
facebook-github-bot
pushed a commit
to facebook/react-native
that referenced
this pull request
Dec 4, 2023
…ublicInstance (#41786) Summary: Pull Request resolved: #41786 Changelog: [Internal] This is the preprequisite for facebook/react#27783 Reviewed By: rubennorte Differential Revision: D51808831 fbshipit-source-id: c8ddf67d7ad35a670fa462c246dcb7230ba47716
hoxyq
added a commit
that referenced
this pull request
Dec 5, 2023
Follow-up on #27783. React Native is actually using `ReactNativeTypes`, which are synced from this repo. In order to make `isChildPublicInstance` visible for renderers inside React Native repository, we need to list it in `ReactNativeTypes`. Because of current circular dependency between React Native and React, it is impossible to actually type it properly: - Can't import any types in `ReactNativeTypes` from local files, because it will break React Native, once synced. - Implementations can't use real types in their definitions, because it will break these checks: https://github.com/facebook/react/blob/223db40d5a04dc3311f963f5296675f7f43139e8/packages/react-native-renderer/fabric.js#L12-L13 https://github.com/facebook/react/blob/223db40d5a04dc3311f963f5296675f7f43139e8/packages/react-native-renderer/index.js#L12-L14
facebook-github-bot
pushed a commit
to facebook/react-native
that referenced
this pull request
Dec 6, 2023
Summary: Pull Request resolved: #41807 Changelog: [Internal] Follow-up on facebook/react#27783. React Native is actually using `ReactNativeTypes`, which are synced from this repo. In order to make `isChildPublicInstance` visible for renderers inside React Native repository, we need to list it in `ReactNativeTypes`. Because of current circular dependency between React Native and React, it is impossible to actually type it properly: - Can't import any types in `ReactNativeTypes` from local files, because it will break React Native, once synced. - Implementations can't use real types in their definitions, because it will break these checks: https://github.com/facebook/react/blob/223db40d5a04dc3311f963f5296675f7f43139e8/packages/react-native-renderer/fabric.js#L12-L13 https://github.com/facebook/react/blob/223db40d5a04dc3311f963f5296675f7f43139e8/packages/react-native-renderer/index.js#L12-L14 DiffTrain build for commit facebook/react@c29ca23. Test Plan: Sandcastle tests Reviewed By: kassens Differential Revision: D51849040 Pulled By: hoxyq fbshipit-source-id: f75593e44c114289ad4c6fb8b4b37c4c5fd6d3d4
ztanner
added a commit
to vercel/next.js
that referenced
this pull request
Dec 15, 2023
Updates React from 2c338b16f to 0cdfef19b. ### React upstream changes - facebook/react#27821 - facebook/react#27820 - facebook/react#27818 - facebook/react#27819 - facebook/react#27817 - facebook/react#27703 - facebook/react#27796 - facebook/react#27811 - facebook/react#27804 - facebook/react#27807 - facebook/react#27805 - facebook/react#27792 - facebook/react#27788 - facebook/react#26852 - facebook/react#27790 - facebook/react#27786 - facebook/react#27785 - facebook/react#27783 - facebook/react#27784 - facebook/react#27769 - facebook/react#27766 - facebook/react#27701 - facebook/react#27732 - facebook/react#27740 - facebook/react#27767 - facebook/react#27768 - facebook/react#27765 - facebook/react#27759 - facebook/react#27579 - facebook/react#27709 - facebook/react#27734 - facebook/react#27739 - facebook/react#27717 - facebook/react#27583 - facebook/react#27713 Closes NEXT-1887
agustints
pushed a commit
to agustints/next.js
that referenced
this pull request
Jan 6, 2024
Updates React from 2c338b16f to 0cdfef19b. ### React upstream changes - facebook/react#27821 - facebook/react#27820 - facebook/react#27818 - facebook/react#27819 - facebook/react#27817 - facebook/react#27703 - facebook/react#27796 - facebook/react#27811 - facebook/react#27804 - facebook/react#27807 - facebook/react#27805 - facebook/react#27792 - facebook/react#27788 - facebook/react#26852 - facebook/react#27790 - facebook/react#27786 - facebook/react#27785 - facebook/react#27783 - facebook/react#27784 - facebook/react#27769 - facebook/react#27766 - facebook/react#27701 - facebook/react#27732 - facebook/react#27740 - facebook/react#27767 - facebook/react#27768 - facebook/react#27765 - facebook/react#27759 - facebook/react#27579 - facebook/react#27709 - facebook/react#27734 - facebook/react#27739 - facebook/react#27717 - facebook/react#27583 - facebook/react#27713 Closes NEXT-1887
Othinn
pushed a commit
to Othinn/react-native
that referenced
this pull request
Jan 9, 2024
…ublicInstance (facebook#41786) Summary: Pull Request resolved: facebook#41786 Changelog: [Internal] This is the preprequisite for facebook/react#27783 Reviewed By: rubennorte Differential Revision: D51808831 fbshipit-source-id: c8ddf67d7ad35a670fa462c246dcb7230ba47716
Othinn
pushed a commit
to Othinn/react-native
that referenced
this pull request
Jan 9, 2024
…acebook#41807) Summary: Pull Request resolved: facebook#41807 Changelog: [Internal] Follow-up on facebook/react#27783. React Native is actually using `ReactNativeTypes`, which are synced from this repo. In order to make `isChildPublicInstance` visible for renderers inside React Native repository, we need to list it in `ReactNativeTypes`. Because of current circular dependency between React Native and React, it is impossible to actually type it properly: - Can't import any types in `ReactNativeTypes` from local files, because it will break React Native, once synced. - Implementations can't use real types in their definitions, because it will break these checks: https://github.com/facebook/react/blob/223db40d5a04dc3311f963f5296675f7f43139e8/packages/react-native-renderer/fabric.js#L12-L13 https://github.com/facebook/react/blob/223db40d5a04dc3311f963f5296675f7f43139e8/packages/react-native-renderer/index.js#L12-L14 DiffTrain build for commit facebook/react@c29ca23. Test Plan: Sandcastle tests Reviewed By: kassens Differential Revision: D51849040 Pulled By: hoxyq fbshipit-source-id: f75593e44c114289ad4c6fb8b4b37c4c5fd6d3d4
hoxyq
added a commit
to hoxyq/react-native
that referenced
this pull request
Jan 11, 2024
…stance Summary: Changelog: [Internal] Manually patching public React renderers artifacts to include `isChildPublicInstance` method, which was added in facebook/react#27783. To identifly the required changes in code I've ran a diff for 2 commits: 1. The one with the changes 2. Its parent FB implementation were synced in D51816108. Differential Revision: D52697885
hoxyq
pushed a commit
to hoxyq/react-native
that referenced
this pull request
Jan 11, 2024
…stance Summary: Changelog: [Internal] Manually patching public React renderers artifacts to include `isChildPublicInstance` method, which was added in facebook/react#27783. To identifly the required changes in code I've ran a diff for 2 commits: 1. The one with the changes 2. Its parent FB implementation were synced in D51816108. Differential Revision: D52697885 fbshipit-source-id: 89c3314823370b28577c622f9484d278b5340c76
hoxyq
pushed a commit
to hoxyq/react-native
that referenced
this pull request
Jan 11, 2024
…stance Summary: Changelog: [Internal] Manually patching public React renderers artifacts to include `isChildPublicInstance` method, which was added in facebook/react#27783. To identifly the required changes in code I've ran a diff for 2 commits: 1. The one with the changes 2. Its parent FB implementation were synced in D51816108. Differential Revision: D52697885 fbshipit-source-id: 835ccd994cc55ca44a5a03932dc9620594a11931
hoxyq
pushed a commit
to hoxyq/react-native
that referenced
this pull request
Jan 11, 2024
…stance Summary: Changelog: [Internal] Manually patching public React renderers artifacts to include `isChildPublicInstance` method, which was added in facebook/react#27783. To identifly the required changes in code I've ran a diff for 2 commits: 1. The one with the changes 2. Its parent FB implementation were synced in D51816108. Differential Revision: D52697885 fbshipit-source-id: 1eeccd0cc5c99770cb20654ea119c340aef7d500
hoxyq
added a commit
to hoxyq/react-native
that referenced
this pull request
Jan 15, 2024
…stance (facebook#42249) Summary: Changelog: [Internal] Manually patching public React renderers artifacts to include `isChildPublicInstance` method, which was added in facebook/react#27783. To identifly the required changes in code I've ran a diff for 2 commits: 1. The one with the changes 2. Its parent FB implementation were synced in D51816108. Reviewed By: sammy-SC Differential Revision: D52697885
hoxyq
pushed a commit
to hoxyq/react-native
that referenced
this pull request
Jan 15, 2024
…stance Summary: Changelog: [Internal] Manually patching public React renderers artifacts to include `isChildPublicInstance` method, which was added in facebook/react#27783. To identifly the required changes in code I've ran a diff for 2 commits: 1. The one with the changes 2. Its parent FB implementation were synced in D51816108. Differential Revision: D52697885 fbshipit-source-id: ce70c16ec90a89f79970b21391d0fa40d6ed2d05
hoxyq
pushed a commit
to hoxyq/react-native
that referenced
this pull request
Jan 15, 2024
…stance Summary: Changelog: [Internal] Manually patching public React renderers artifacts to include `isChildPublicInstance` method, which was added in facebook/react#27783. To identifly the required changes in code I've ran a diff for 2 commits: 1. The one with the changes 2. Its parent FB implementation were synced in D51816108. Differential Revision: D52697885 fbshipit-source-id: e68baafbf9a7b3232375ab1db2560158c03641f8
hoxyq
pushed a commit
to hoxyq/react-native
that referenced
this pull request
Jan 15, 2024
…stance Summary: Changelog: [Internal] Manually patching public React renderers artifacts to include `isChildPublicInstance` method, which was added in facebook/react#27783. To identifly the required changes in code I've ran a diff for 2 commits: 1. The one with the changes 2. Its parent FB implementation were synced in D51816108. Differential Revision: D52697885 fbshipit-source-id: 153f51e48f325aa51180effecc3ecf0a42e84c87
hoxyq
added a commit
to hoxyq/react-native
that referenced
this pull request
Jan 15, 2024
…stance (facebook#42249) Summary: Changelog: [Internal] Manually patching public React renderers artifacts to include `isChildPublicInstance` method, which was added in facebook/react#27783. To identifly the required changes in code I've ran a diff for 2 commits: 1. The one with the changes 2. Its parent FB implementation were synced in D51816108. Reviewed By: sammy-SC Differential Revision: D52697885
hoxyq
pushed a commit
to hoxyq/react-native
that referenced
this pull request
Jan 15, 2024
…stance Summary: Changelog: [Internal] Manually patching public React renderers artifacts to include `isChildPublicInstance` method, which was added in facebook/react#27783. To identifly the required changes in code I've ran a diff for 2 commits: 1. The one with the changes 2. Its parent FB implementation were synced in D51816108. Differential Revision: D52697885 fbshipit-source-id: e4d28d8251c25211a7b60449e0d5b9d796bd6c5a
hoxyq
pushed a commit
to hoxyq/react-native
that referenced
this pull request
Jan 15, 2024
…stance Summary: Changelog: [Internal] Manually patching public React renderers artifacts to include `isChildPublicInstance` method, which was added in facebook/react#27783. To identifly the required changes in code I've ran a diff for 2 commits: 1. The one with the changes 2. Its parent FB implementation were synced in D51816108. Differential Revision: D52697885 fbshipit-source-id: b8dfbc641899516c7c62bb79bd21fae1a1981a0c
facebook-github-bot
pushed a commit
to facebook/react-native
that referenced
this pull request
Jan 15, 2024
…stance (#42249) Summary: Pull Request resolved: #42249 Changelog: [Internal] Manually patching public React renderers artifacts to include `isChildPublicInstance` method, which was added in facebook/react#27783. To identifly the required changes in code I've ran a diff for 2 commits: 1. The one with the changes 2. Its parent FB implementation were synced in D51816108. Reviewed By: sammy-SC Differential Revision: D52697885 fbshipit-source-id: c62af6e89e8da3ee6f6c7264bacf6e96030e9db8
EdisonVan
pushed a commit
to EdisonVan/react
that referenced
this pull request
Apr 15, 2024
…k#27783) Adds `isChildPublicInstance` method to both renderers (Fabric and Paper), which will receive 2 public instances and return if first argument is an ancestor of the second, based on fibers. This will be used as a fallback when DOM node APIs are not available: for Paper renderer or for Fabric without DOM node APIs. How it is going to be used: to determine which `AppContainer` component in RN is responsible for highlighting an inspected element on the screen.
EdisonVan
pushed a commit
to EdisonVan/react
that referenced
this pull request
Apr 15, 2024
Follow-up on facebook#27783. React Native is actually using `ReactNativeTypes`, which are synced from this repo. In order to make `isChildPublicInstance` visible for renderers inside React Native repository, we need to list it in `ReactNativeTypes`. Because of current circular dependency between React Native and React, it is impossible to actually type it properly: - Can't import any types in `ReactNativeTypes` from local files, because it will break React Native, once synced. - Implementations can't use real types in their definitions, because it will break these checks: https://github.com/facebook/react/blob/223db40d5a04dc3311f963f5296675f7f43139e8/packages/react-native-renderer/fabric.js#L12-L13 https://github.com/facebook/react/blob/223db40d5a04dc3311f963f5296675f7f43139e8/packages/react-native-renderer/index.js#L12-L14
bigfootjon
pushed a commit
that referenced
this pull request
Apr 18, 2024
Adds `isChildPublicInstance` method to both renderers (Fabric and Paper), which will receive 2 public instances and return if first argument is an ancestor of the second, based on fibers. This will be used as a fallback when DOM node APIs are not available: for Paper renderer or for Fabric without DOM node APIs. How it is going to be used: to determine which `AppContainer` component in RN is responsible for highlighting an inspected element on the screen. DiffTrain build for commit 1729b49.
tungdo194
pushed a commit
to tungdo194/rn-test
that referenced
this pull request
Apr 28, 2024
Summary: Changelog: [Internal] Follow-up on facebook/react#27783. React Native is actually using `ReactNativeTypes`, which are synced from this repo. In order to make `isChildPublicInstance` visible for renderers inside React Native repository, we need to list it in `ReactNativeTypes`. Because of current circular dependency between React Native and React, it is impossible to actually type it properly: - Can't import any types in `ReactNativeTypes` from local files, because it will break React Native, once synced. - Implementations can't use real types in their definitions, because it will break these checks: https://github.com/facebook/react/blob/223db40d5a04dc3311f963f5296675f7f43139e8/packages/react-native-renderer/fabric.js#L12-L13 https://github.com/facebook/react/blob/223db40d5a04dc3311f963f5296675f7f43139e8/packages/react-native-renderer/index.js#L12-L14 DiffTrain build for commit facebook/react@c29ca23. Differential Revision: D51849040
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.
Adds
isChildPublicInstance
method to both renderers (Fabric and Paper), which will receive 2 public instances and return if first argument is an ancestor of the second, based on fibers.This will be used as a fallback when DOM node APIs are not available: for Paper renderer or for Fabric without DOM node APIs.
How it is going to be used: to determine which
AppContainer
component in RN is responsible for highlighting an inspected element on the screen.