Skip to content

Commit bc4920a

Browse files
rubennortejeongshin
authored andcommitted
Implement ReactNativePrivateInterface.createPublicTextInstance
Summary: This exposes a new method in the private interface used by React so we can merge facebook/react#26516 We're adding support for text instances in React Native (as defined in react-native-community/discussions-and-proposals#607). See D44632362 for the full implementation. Changelog: [internal] bypass-github-export-checks Reviewed By: sammy-SC Differential Revision: D44663223 fbshipit-source-id: 70ca3ca9d2edefaa73a396f43c2d560c6d1422f1
1 parent fd5f9fe commit bc4920a

File tree

2 files changed

+12
-0
lines changed

2 files changed

+12
-0
lines changed

packages/react-native/Libraries/ReactNative/ReactFabricPublicInstance/ReactFabricPublicInstance.js

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -178,6 +178,13 @@ export function createPublicInstance(
178178
return new ReactFabricHostComponent(tag, viewConfig, internalInstanceHandle);
179179
}
180180

181+
export function createPublicTextInstance(internalInstanceHandle: mixed): {} {
182+
// React will call this method to create text instances but we'll return an
183+
// empty object for now. These instances are only created lazily when
184+
// traversing the tree, and that's not enabled yet.
185+
return {};
186+
}
187+
181188
export function getNativeTagFromPublicInstance(
182189
publicInstance: ReactFabricHostComponent,
183190
): number {

packages/react-native/Libraries/ReactPrivate/ReactNativePrivateInterface.js

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@ import typeof RCTEventEmitter from '../EventEmitter/RCTEventEmitter';
1818
import typeof CustomEvent from '../Events/CustomEvent';
1919
import typeof {
2020
createPublicInstance,
21+
createPublicTextInstance,
2122
getNativeTagFromPublicInstance,
2223
getNodeFromPublicInstance,
2324
} from '../ReactNative/ReactFabricPublicInstance/ReactFabricPublicInstance';
@@ -94,6 +95,10 @@ module.exports = {
9495
return require('../ReactNative/ReactFabricPublicInstance/ReactFabricPublicInstance')
9596
.createPublicInstance;
9697
},
98+
get createPublicTextInstance(): createPublicTextInstance {
99+
return require('../ReactNative/ReactFabricPublicInstance/ReactFabricPublicInstance')
100+
.createPublicTextInstance;
101+
},
97102
get getNativeTagFromPublicInstance(): getNativeTagFromPublicInstance {
98103
return require('../ReactNative/ReactFabricPublicInstance/ReactFabricPublicInstance')
99104
.getNativeTagFromPublicInstance;

0 commit comments

Comments
 (0)