diff --git a/packages/react-native-codegen/src/generators/components/GenerateStateH.js b/packages/react-native-codegen/src/generators/components/GenerateStateH.js index 3aee725fca3..8805977275f 100644 --- a/packages/react-native-codegen/src/generators/components/GenerateStateH.js +++ b/packages/react-native-codegen/src/generators/components/GenerateStateH.js @@ -35,8 +35,6 @@ const FileTemplate = ({ #ifdef ANDROID #include -#include -#include #endif namespace facebook::react { @@ -57,9 +55,6 @@ public: folly::dynamic getDynamic() const { return {}; }; - MapBuffer getMapBuffer() const { - return MapBufferBuilder::EMPTY(); - }; #endif }; `.trim(); diff --git a/packages/react-native-codegen/src/generators/components/__tests__/__snapshots__/GenerateStateH-test.js.snap b/packages/react-native-codegen/src/generators/components/__tests__/__snapshots__/GenerateStateH-test.js.snap index 58b9b1d9ca3..23db8fc9937 100644 --- a/packages/react-native-codegen/src/generators/components/__tests__/__snapshots__/GenerateStateH-test.js.snap +++ b/packages/react-native-codegen/src/generators/components/__tests__/__snapshots__/GenerateStateH-test.js.snap @@ -14,8 +14,6 @@ Map { #ifdef ANDROID #include -#include -#include #endif namespace facebook::react { @@ -29,9 +27,6 @@ public: folly::dynamic getDynamic() const { return {}; }; - MapBuffer getMapBuffer() const { - return MapBufferBuilder::EMPTY(); - }; #endif }; @@ -53,8 +48,6 @@ Map { #ifdef ANDROID #include -#include -#include #endif namespace facebook::react { @@ -68,9 +61,6 @@ public: folly::dynamic getDynamic() const { return {}; }; - MapBuffer getMapBuffer() const { - return MapBufferBuilder::EMPTY(); - }; #endif }; @@ -92,8 +82,6 @@ Map { #ifdef ANDROID #include -#include -#include #endif namespace facebook::react { @@ -107,9 +95,6 @@ public: folly::dynamic getDynamic() const { return {}; }; - MapBuffer getMapBuffer() const { - return MapBufferBuilder::EMPTY(); - }; #endif }; @@ -131,8 +116,6 @@ Map { #ifdef ANDROID #include -#include -#include #endif namespace facebook::react { @@ -146,9 +129,6 @@ public: folly::dynamic getDynamic() const { return {}; }; - MapBuffer getMapBuffer() const { - return MapBufferBuilder::EMPTY(); - }; #endif }; @@ -170,8 +150,6 @@ Map { #ifdef ANDROID #include -#include -#include #endif namespace facebook::react { @@ -185,9 +163,6 @@ public: folly::dynamic getDynamic() const { return {}; }; - MapBuffer getMapBuffer() const { - return MapBufferBuilder::EMPTY(); - }; #endif }; @@ -209,8 +184,6 @@ Map { #ifdef ANDROID #include -#include -#include #endif namespace facebook::react { @@ -224,9 +197,6 @@ public: folly::dynamic getDynamic() const { return {}; }; - MapBuffer getMapBuffer() const { - return MapBufferBuilder::EMPTY(); - }; #endif }; @@ -248,8 +218,6 @@ Map { #ifdef ANDROID #include -#include -#include #endif namespace facebook::react { @@ -263,9 +231,6 @@ public: folly::dynamic getDynamic() const { return {}; }; - MapBuffer getMapBuffer() const { - return MapBufferBuilder::EMPTY(); - }; #endif }; @@ -287,8 +252,6 @@ Map { #ifdef ANDROID #include -#include -#include #endif namespace facebook::react { @@ -302,9 +265,6 @@ public: folly::dynamic getDynamic() const { return {}; }; - MapBuffer getMapBuffer() const { - return MapBufferBuilder::EMPTY(); - }; #endif }; @@ -326,8 +286,6 @@ Map { #ifdef ANDROID #include -#include -#include #endif namespace facebook::react { @@ -341,9 +299,6 @@ public: folly::dynamic getDynamic() const { return {}; }; - MapBuffer getMapBuffer() const { - return MapBufferBuilder::EMPTY(); - }; #endif }; @@ -365,8 +320,6 @@ Map { #ifdef ANDROID #include -#include -#include #endif namespace facebook::react { @@ -380,9 +333,6 @@ public: folly::dynamic getDynamic() const { return {}; }; - MapBuffer getMapBuffer() const { - return MapBufferBuilder::EMPTY(); - }; #endif }; @@ -404,8 +354,6 @@ Map { #ifdef ANDROID #include -#include -#include #endif namespace facebook::react { @@ -430,8 +378,6 @@ Map { #ifdef ANDROID #include -#include -#include #endif namespace facebook::react { @@ -445,9 +391,6 @@ public: folly::dynamic getDynamic() const { return {}; }; - MapBuffer getMapBuffer() const { - return MapBufferBuilder::EMPTY(); - }; #endif }; @@ -469,8 +412,6 @@ Map { #ifdef ANDROID #include -#include -#include #endif namespace facebook::react { @@ -484,9 +425,6 @@ public: folly::dynamic getDynamic() const { return {}; }; - MapBuffer getMapBuffer() const { - return MapBufferBuilder::EMPTY(); - }; #endif }; @@ -508,8 +446,6 @@ Map { #ifdef ANDROID #include -#include -#include #endif namespace facebook::react { @@ -523,9 +459,6 @@ public: folly::dynamic getDynamic() const { return {}; }; - MapBuffer getMapBuffer() const { - return MapBufferBuilder::EMPTY(); - }; #endif }; @@ -538,9 +471,6 @@ public: folly::dynamic getDynamic() const { return {}; }; - MapBuffer getMapBuffer() const { - return MapBufferBuilder::EMPTY(); - }; #endif }; @@ -562,8 +492,6 @@ Map { #ifdef ANDROID #include -#include -#include #endif namespace facebook::react { @@ -577,9 +505,6 @@ public: folly::dynamic getDynamic() const { return {}; }; - MapBuffer getMapBuffer() const { - return MapBufferBuilder::EMPTY(); - }; #endif }; @@ -601,8 +526,6 @@ Map { #ifdef ANDROID #include -#include -#include #endif namespace facebook::react { @@ -616,9 +539,6 @@ public: folly::dynamic getDynamic() const { return {}; }; - MapBuffer getMapBuffer() const { - return MapBufferBuilder::EMPTY(); - }; #endif }; @@ -640,8 +560,6 @@ Map { #ifdef ANDROID #include -#include -#include #endif namespace facebook::react { @@ -655,9 +573,6 @@ public: folly::dynamic getDynamic() const { return {}; }; - MapBuffer getMapBuffer() const { - return MapBufferBuilder::EMPTY(); - }; #endif }; @@ -679,8 +594,6 @@ Map { #ifdef ANDROID #include -#include -#include #endif namespace facebook::react { @@ -694,9 +607,6 @@ public: folly::dynamic getDynamic() const { return {}; }; - MapBuffer getMapBuffer() const { - return MapBufferBuilder::EMPTY(); - }; #endif }; @@ -718,8 +628,6 @@ Map { #ifdef ANDROID #include -#include -#include #endif namespace facebook::react { @@ -733,9 +641,6 @@ public: folly::dynamic getDynamic() const { return {}; }; - MapBuffer getMapBuffer() const { - return MapBufferBuilder::EMPTY(); - }; #endif }; @@ -757,8 +662,6 @@ Map { #ifdef ANDROID #include -#include -#include #endif namespace facebook::react { @@ -783,8 +686,6 @@ Map { #ifdef ANDROID #include -#include -#include #endif namespace facebook::react { @@ -798,9 +699,6 @@ public: folly::dynamic getDynamic() const { return {}; }; - MapBuffer getMapBuffer() const { - return MapBufferBuilder::EMPTY(); - }; #endif }; @@ -822,8 +720,6 @@ Map { #ifdef ANDROID #include -#include -#include #endif namespace facebook::react { @@ -837,9 +733,6 @@ public: folly::dynamic getDynamic() const { return {}; }; - MapBuffer getMapBuffer() const { - return MapBufferBuilder::EMPTY(); - }; #endif }; @@ -861,8 +754,6 @@ Map { #ifdef ANDROID #include -#include -#include #endif namespace facebook::react { @@ -876,9 +767,6 @@ public: folly::dynamic getDynamic() const { return {}; }; - MapBuffer getMapBuffer() const { - return MapBufferBuilder::EMPTY(); - }; #endif }; @@ -900,8 +788,6 @@ Map { #ifdef ANDROID #include -#include -#include #endif namespace facebook::react { @@ -915,9 +801,6 @@ public: folly::dynamic getDynamic() const { return {}; }; - MapBuffer getMapBuffer() const { - return MapBufferBuilder::EMPTY(); - }; #endif }; @@ -939,8 +822,6 @@ Map { #ifdef ANDROID #include -#include -#include #endif namespace facebook::react { @@ -954,9 +835,6 @@ public: folly::dynamic getDynamic() const { return {}; }; - MapBuffer getMapBuffer() const { - return MapBufferBuilder::EMPTY(); - }; #endif }; @@ -978,8 +856,6 @@ Map { #ifdef ANDROID #include -#include -#include #endif namespace facebook::react { @@ -993,9 +869,6 @@ public: folly::dynamic getDynamic() const { return {}; }; - MapBuffer getMapBuffer() const { - return MapBufferBuilder::EMPTY(); - }; #endif }; @@ -1017,8 +890,6 @@ Map { #ifdef ANDROID #include -#include -#include #endif namespace facebook::react { @@ -1032,9 +903,6 @@ public: folly::dynamic getDynamic() const { return {}; }; - MapBuffer getMapBuffer() const { - return MapBufferBuilder::EMPTY(); - }; #endif }; @@ -1056,8 +924,6 @@ Map { #ifdef ANDROID #include -#include -#include #endif namespace facebook::react { @@ -1071,9 +937,6 @@ public: folly::dynamic getDynamic() const { return {}; }; - MapBuffer getMapBuffer() const { - return MapBufferBuilder::EMPTY(); - }; #endif }; @@ -1086,9 +949,6 @@ public: folly::dynamic getDynamic() const { return {}; }; - MapBuffer getMapBuffer() const { - return MapBufferBuilder::EMPTY(); - }; #endif }; @@ -1110,8 +970,6 @@ Map { #ifdef ANDROID #include -#include -#include #endif namespace facebook::react { @@ -1125,9 +983,6 @@ public: folly::dynamic getDynamic() const { return {}; }; - MapBuffer getMapBuffer() const { - return MapBufferBuilder::EMPTY(); - }; #endif }; @@ -1140,9 +995,6 @@ public: folly::dynamic getDynamic() const { return {}; }; - MapBuffer getMapBuffer() const { - return MapBufferBuilder::EMPTY(); - }; #endif }; diff --git a/packages/react-native/ReactAndroid/src/main/jni/react/runtime/jni/JReactInstance.cpp b/packages/react-native/ReactAndroid/src/main/jni/react/runtime/jni/JReactInstance.cpp index e111d2c0a63..61c48351584 100644 --- a/packages/react-native/ReactAndroid/src/main/jni/react/runtime/jni/JReactInstance.cpp +++ b/packages/react-native/ReactAndroid/src/main/jni/react/runtime/jni/JReactInstance.cpp @@ -18,7 +18,6 @@ #include #include #include -#include #include #include #include diff --git a/packages/react-native/ReactCommon/react/renderer/components/image/ImageState.h b/packages/react-native/ReactCommon/react/renderer/components/image/ImageState.h index d6514d25d22..c42d7b666cc 100644 --- a/packages/react-native/ReactCommon/react/renderer/components/image/ImageState.h +++ b/packages/react-native/ReactCommon/react/renderer/components/image/ImageState.h @@ -54,10 +54,6 @@ class ImageState final { folly::dynamic getDynamic() const { return {}; }; - - MapBuffer getMapBuffer() const { - return MapBufferBuilder::EMPTY(); - }; #endif private: diff --git a/packages/react-native/ReactCommon/react/renderer/components/modal/CMakeLists.txt b/packages/react-native/ReactCommon/react/renderer/components/modal/CMakeLists.txt index 2fa4021b39b..dd1a291061b 100644 --- a/packages/react-native/ReactCommon/react/renderer/components/modal/CMakeLists.txt +++ b/packages/react-native/ReactCommon/react/renderer/components/modal/CMakeLists.txt @@ -29,7 +29,6 @@ target_link_libraries(rrc_modal react_render_debug react_render_graphics react_render_imagemanager - react_render_mapbuffer react_render_uimanager rrc_image rrc_view diff --git a/packages/react-native/ReactCommon/react/renderer/components/modal/ModalHostViewState.h b/packages/react-native/ReactCommon/react/renderer/components/modal/ModalHostViewState.h index 8c00478313a..9a12bdef2cd 100644 --- a/packages/react-native/ReactCommon/react/renderer/components/modal/ModalHostViewState.h +++ b/packages/react-native/ReactCommon/react/renderer/components/modal/ModalHostViewState.h @@ -12,8 +12,6 @@ #ifdef ANDROID #include -#include -#include #endif namespace facebook::react { @@ -41,10 +39,6 @@ class ModalHostViewState final { #ifdef ANDROID folly::dynamic getDynamic() const; - MapBuffer getMapBuffer() const { - return MapBufferBuilder::EMPTY(); - }; - #endif #pragma mark - Getters diff --git a/packages/react-native/ReactCommon/react/renderer/components/scrollview/ScrollViewState.h b/packages/react-native/ReactCommon/react/renderer/components/scrollview/ScrollViewState.h index de8e81bb63f..e9357004d45 100644 --- a/packages/react-native/ReactCommon/react/renderer/components/scrollview/ScrollViewState.h +++ b/packages/react-native/ReactCommon/react/renderer/components/scrollview/ScrollViewState.h @@ -14,8 +14,6 @@ #ifdef ANDROID #include -#include -#include #endif namespace facebook::react { @@ -53,9 +51,6 @@ class ScrollViewState final { "contentOffsetTop", contentOffset.y)( "scrollAwayPaddingTop", scrollAwayPaddingTop); }; - MapBuffer getMapBuffer() const { - return MapBufferBuilder::EMPTY(); - }; #endif }; diff --git a/packages/react-native/ReactCommon/react/renderer/components/text/ParagraphShadowNode.h b/packages/react-native/ReactCommon/react/renderer/components/text/ParagraphShadowNode.h index a95b9d565b4..0a1cffb621c 100644 --- a/packages/react-native/ReactCommon/react/renderer/components/text/ParagraphShadowNode.h +++ b/packages/react-native/ReactCommon/react/renderer/components/text/ParagraphShadowNode.h @@ -29,7 +29,8 @@ class ParagraphShadowNode final : public ConcreteViewShadowNode< ParagraphComponentName, ParagraphProps, ParagraphEventEmitter, - ParagraphState>, + ParagraphState, + /* usesMapBufferForStateData */ true>, public BaseTextShadowNode { public: using ConcreteViewShadowNode::ConcreteViewShadowNode; diff --git a/packages/react-native/ReactCommon/react/renderer/components/textinput/platform/android/react/renderer/components/androidtextinput/AndroidTextInputShadowNode.h b/packages/react-native/ReactCommon/react/renderer/components/textinput/platform/android/react/renderer/components/androidtextinput/AndroidTextInputShadowNode.h index e72e639e9b4..43a4df1e9ed 100644 --- a/packages/react-native/ReactCommon/react/renderer/components/textinput/platform/android/react/renderer/components/androidtextinput/AndroidTextInputShadowNode.h +++ b/packages/react-native/ReactCommon/react/renderer/components/textinput/platform/android/react/renderer/components/androidtextinput/AndroidTextInputShadowNode.h @@ -23,11 +23,13 @@ extern const char AndroidTextInputComponentName[]; /* * `ShadowNode` for component. */ -class AndroidTextInputShadowNode final : public ConcreteViewShadowNode< - AndroidTextInputComponentName, - AndroidTextInputProps, - AndroidTextInputEventEmitter, - AndroidTextInputState> { +class AndroidTextInputShadowNode final + : public ConcreteViewShadowNode< + AndroidTextInputComponentName, + AndroidTextInputProps, + AndroidTextInputEventEmitter, + AndroidTextInputState, + /* usesMapBufferForStateData */ true> { public: static ShadowNodeTraits BaseTraits() { auto traits = ConcreteViewShadowNode::BaseTraits(); diff --git a/packages/react-native/ReactCommon/react/renderer/components/view/ConcreteViewShadowNode.h b/packages/react-native/ReactCommon/react/renderer/components/view/ConcreteViewShadowNode.h index 370ff6026cc..9c028febde0 100644 --- a/packages/react-native/ReactCommon/react/renderer/components/view/ConcreteViewShadowNode.h +++ b/packages/react-native/ReactCommon/react/renderer/components/view/ConcreteViewShadowNode.h @@ -27,13 +27,15 @@ template < const char* concreteComponentName, typename ViewPropsT = ViewProps, typename ViewEventEmitterT = ViewEventEmitter, - typename... Ts> + typename StateDataT = StateData, + bool usesMapBufferForStateData = false> class ConcreteViewShadowNode : public ConcreteShadowNode< concreteComponentName, YogaLayoutableShadowNode, ViewPropsT, ViewEventEmitterT, - Ts...> { + StateDataT, + usesMapBufferForStateData> { static_assert( std::is_base_of::value, "ViewPropsT must be a descendant of ViewProps"); @@ -50,7 +52,8 @@ class ConcreteViewShadowNode : public ConcreteShadowNode< YogaLayoutableShadowNode, ViewPropsT, ViewEventEmitterT, - Ts...>; + StateDataT, + usesMapBufferForStateData>; ConcreteViewShadowNode( const ShadowNodeFragment& fragment, diff --git a/packages/react-native/ReactCommon/react/renderer/core/ConcreteShadowNode.h b/packages/react-native/ReactCommon/react/renderer/core/ConcreteShadowNode.h index 4536bec362c..a95285b9216 100644 --- a/packages/react-native/ReactCommon/react/renderer/core/ConcreteShadowNode.h +++ b/packages/react-native/ReactCommon/react/renderer/core/ConcreteShadowNode.h @@ -29,7 +29,8 @@ template < typename BaseShadowNodeT, typename PropsT, typename EventEmitterT = EventEmitter, - typename StateDataT = StateData> + typename StateDataT = StateData, + bool usesMapBufferForStateData = false> class ConcreteShadowNode : public BaseShadowNodeT { static_assert( std::is_base_of::value, @@ -51,7 +52,7 @@ class ConcreteShadowNode : public BaseShadowNodeT { using ConcreteEventEmitter = EventEmitterT; using SharedConcreteEventEmitter = std::shared_ptr; using SharedConcreteShadowNode = std::shared_ptr; - using ConcreteState = ConcreteState; + using ConcreteState = ConcreteState; using ConcreteStateData = StateDataT; static ComponentName Name() { diff --git a/packages/react-native/ReactCommon/react/renderer/core/ConcreteState.h b/packages/react-native/ReactCommon/react/renderer/core/ConcreteState.h index ffe6d77f629..46ac23f2fd8 100644 --- a/packages/react-native/ReactCommon/react/renderer/core/ConcreteState.h +++ b/packages/react-native/ReactCommon/react/renderer/core/ConcreteState.h @@ -13,6 +13,11 @@ #include #include +#ifdef ANDROID +#include +#include +#endif + namespace facebook::react { /* @@ -21,7 +26,7 @@ namespace facebook::react { * state update transaction. A data object does not need to be copyable but * needs to be moveable. */ -template +template class ConcreteState : public State { public: using Shared = std::shared_ptr; @@ -101,7 +106,11 @@ class ConcreteState : public State { } MapBuffer getMapBuffer() const override { - return getData().getMapBuffer(); + if constexpr (usesMapBufferForStateData) { + return getData().getMapBuffer(); + } else { + return MapBufferBuilder::EMPTY(); + } } #endif }; diff --git a/packages/react-native/ReactCommon/react/renderer/core/State.h b/packages/react-native/ReactCommon/react/renderer/core/State.h index 5297cdcf8a8..82c19c20f77 100644 --- a/packages/react-native/ReactCommon/react/renderer/core/State.h +++ b/packages/react-native/ReactCommon/react/renderer/core/State.h @@ -10,7 +10,6 @@ #ifdef ANDROID #include #include -#include #endif #include diff --git a/packages/react-native/ReactCommon/react/renderer/core/tests/TestComponent.h b/packages/react-native/ReactCommon/react/renderer/core/tests/TestComponent.h index 16cdac44330..b3f5fefe499 100644 --- a/packages/react-native/ReactCommon/react/renderer/core/tests/TestComponent.h +++ b/packages/react-native/ReactCommon/react/renderer/core/tests/TestComponent.h @@ -20,8 +20,6 @@ #ifdef ANDROID #include -#include -#include #endif /** @@ -40,10 +38,6 @@ struct TestState { folly::dynamic getDynamic() const { return {}; } - - MapBuffer getMapBuffer() const { - return MapBufferBuilder::EMPTY(); - } #endif };