You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Commit d94882e
Browse filesBrowse the repository at this point in the historyBrowse files
Make TextInput descriptors and prop conversion helpers private
Summary:
Lower the following `react/renderer/components/textinput` headers from "for frameworks" to private:
Platform component descriptors:
- Android `androidtextinput/AndroidTextInputComponentDescriptor.h`
- iOS and macOS `iostextinput/TextInputComponentDescriptor.h`
All three classes are `final`, so they cannot be extended, and they are registered only by React Native's own platform glue (the Android core components registry and the iOS TextInput component view). The Android descriptor is additionally coupled to React Native's Java `FabricUIManager` (it reads theme padding over JNI in `getInitialState`).
Prop conversion helpers:
- `baseConversions.h` (conversions for the shared text input enums)
- iOS and macOS `iostextinput/propsConversions.h` (iOS/macOS text input trait parsers)
These are only included by the module's own props sources (`BaseTextInputProps.cpp` and the platform `TextInputProps.cpp` / `AndroidTextInputProps.cpp`).
No header includes any of them. The TextInput shadow nodes, props, state and event emitters stay "for frameworks", since third-party text input libraries build on them directly. The iOS/macOS `conversions.h` also stays "for frameworks", as the iOS/macOS `TextInputProps.h` includes it.
Changelog: [Internal]
Differential Revision: D123643375
Copy file name to clipboardExpand all lines: packages/react-native/ReactCommon/react/renderer/components/textinput/platform/android/react/renderer/components/androidtextinput/AndroidTextInputComponentDescriptor.h
Copy file name to clipboardExpand all lines: packages/react-native/ReactCommon/react/renderer/components/textinput/platform/ios/react/renderer/components/iostextinput/TextInputComponentDescriptor.h
Copy file name to clipboardExpand all lines: packages/react-native/ReactCommon/react/renderer/components/textinput/platform/ios/react/renderer/components/iostextinput/propsConversions.h
@@ -1159,12 +1157,6 @@ class facebook::react::AndroidSwitchProps : public facebook::react::HostPlatform
1159
1157
public virtual folly::dynamic getDiffProps(const facebook::react::Props* prevProps) const override;
1160
1158
}
1161
1159
1162
-
class facebook::react::AndroidTextInputComponentDescriptor : public facebook::react::ConcreteComponentDescriptor<facebook::react::AndroidTextInputShadowNode> {
0 commit comments