From 3790569a71bbb85017ad9854864dfc0b77f0aaa9 Mon Sep 17 00:00:00 2001 From: David Vacca Date: Fri, 21 Aug 2020 14:15:17 -0700 Subject: [PATCH] Integrate Modal into RN Tester Fabric OSS APP Summary: This diff integrates Modal into RN Tester Fabric OSS APP changelog: [internal] internal Reviewed By: fkgozali Differential Revision: D23183507 fbshipit-source-id: bc2513c39c783d387a985c86a12b04dadac49933 --- .../com/facebook/react/fabric/jni/Android.mk | 5 ++- .../java/com/facebook/react/fabric/jni/BUCK | 1 + .../fabric/jni/CoreComponentsRegistry.cpp | 3 ++ .../renderer/components/modal/Android.mk | 39 +++++++++++++++++++ 4 files changed, 46 insertions(+), 2 deletions(-) create mode 100644 ReactCommon/react/renderer/components/modal/Android.mk diff --git a/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/Android.mk b/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/Android.mk index b79f5669199..3a607e1137f 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/Android.mk +++ b/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/Android.mk @@ -11,7 +11,7 @@ LOCAL_MODULE := fabricjni LOCAL_SRC_FILES := $(wildcard $(LOCAL_PATH)/*.cpp) -LOCAL_SHARED_LIBRARIES := libreactconfig libyoga libglog libfb libfbjni libglog_init libfolly_json libfolly_futures libreact_render_mounting libreactnativeutilsjni libreact_utils libreact_render_debug libreact_render_graphics libreact_render_core libreact_render_mapbuffer react_render_componentregistry libreact_render_components_view libreact_render_components_unimplementedview libreact_render_components_root libreact_render_components_scrollview libbetter libreact_render_attributedstring libreact_render_uimanager libreact_render_templateprocessor libreact_render_scheduler libreact_render_animations libreact_render_imagemanager libreact_render_textlayoutmanager libreact_render_viewmanagers react_render_components_text libreact_render_components_image react_render_components_textinput +LOCAL_SHARED_LIBRARIES := libreactconfig libreact_render_components_modal libyoga libglog libfb libfbjni libglog_init libfolly_json libfolly_futures libreact_render_mounting libreactnativeutilsjni libreact_utils libreact_render_debug libreact_render_graphics libreact_render_core libreact_render_mapbuffer react_render_componentregistry libreact_render_components_view libreact_render_components_unimplementedview libreact_render_components_root libreact_render_components_scrollview libbetter libreact_render_attributedstring libreact_render_uimanager libreact_render_templateprocessor libreact_render_scheduler libreact_render_animations libreact_render_imagemanager libreact_render_textlayoutmanager libreact_render_viewmanagers react_render_components_text libreact_render_components_image react_render_components_textinput LOCAL_STATIC_LIBRARIES := @@ -40,11 +40,12 @@ $(call import-module,react/renderer/attributedstring) $(call import-module,react/renderer/componentregistry) $(call import-module,react/renderer/core) $(call import-module,react/renderer/components/image) +$(call import-module,react/renderer/components/modal) $(call import-module,react/renderer/components/root) $(call import-module,react/renderer/components/scrollview) -$(call import-module,react/renderer/components/unimplementedview) $(call import-module,react/renderer/components/text) $(call import-module,react/renderer/components/textinput) +$(call import-module,react/renderer/components/unimplementedview) $(call import-module,react/renderer/components/view) $(call import-module,react/renderer/debug) $(call import-module,react/renderer/graphics) diff --git a/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/BUCK b/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/BUCK index ede1b68846a..a6cab8b8310 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/BUCK +++ b/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/BUCK @@ -47,6 +47,7 @@ rn_xplat_cxx_library( "//xplat/js/react-native-github:generated_components-rncore", react_native_xplat_target("react/renderer/components/image:image"), react_native_xplat_target("react/renderer/components/text:text"), + react_native_xplat_target("react/renderer/components/modal:modal"), react_native_xplat_target("react/renderer/components/textinput:androidtextinput"), ], ) diff --git a/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/CoreComponentsRegistry.cpp b/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/CoreComponentsRegistry.cpp index cd2f0291c9c..74b54374eac 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/CoreComponentsRegistry.cpp +++ b/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/CoreComponentsRegistry.cpp @@ -14,6 +14,7 @@ #include #include #include +#include #include #include #include @@ -40,6 +41,8 @@ CoreComponentsRegistry::sharedProviderRegistry() { concreteComponentDescriptorProvider()); providerRegistry->add( concreteComponentDescriptorProvider()); + providerRegistry->add(concreteComponentDescriptorProvider< + ModalHostViewComponentDescriptor>()); providerRegistry->add( concreteComponentDescriptorProvider()); providerRegistry->add( diff --git a/ReactCommon/react/renderer/components/modal/Android.mk b/ReactCommon/react/renderer/components/modal/Android.mk new file mode 100644 index 00000000000..dd404e8dbda --- /dev/null +++ b/ReactCommon/react/renderer/components/modal/Android.mk @@ -0,0 +1,39 @@ +# Copyright (c) Facebook, Inc. and its affiliates. +# +# This source code is licensed under the MIT license found in the +# LICENSE file in the root directory of this source tree. + +LOCAL_PATH := $(call my-dir) + +include $(CLEAR_VARS) + +LOCAL_MODULE := react_render_components_modal + +LOCAL_SRC_FILES := $(wildcard $(LOCAL_PATH)/*.cpp) + +LOCAL_C_INCLUDES := $(LOCAL_PATH)/ +LOCAL_EXPORT_C_INCLUDES := $(LOCAL_PATH)/../../../../ + +LOCAL_CFLAGS := \ + -DLOG_TAG=\"Fabric\" + +LOCAL_CFLAGS += -fexceptions -frtti -std=c++14 -Wall + +LOCAL_STATIC_LIBRARIES := + +LOCAL_SHARED_LIBRARIES := libyoga glog libfolly_json libglog_init libreact_render_core libreact_render_debug libreact_render_graphics libreact_render_components_image libreact_render_uimanager libreact_render_imagemanager libreact_render_components_view libreact_render_componentregistry libreact_render_viewmanagers + +include $(BUILD_SHARED_LIBRARY) + +$(call import-module,glog) +$(call import-module,folly) +$(call import-module,fbgloginit) +$(call import-module,react/renderer/core) +$(call import-module,react/renderer/componentregistry) +$(call import-module,react/renderer/debug) +$(call import-module,react/renderer/graphics) +$(call import-module,react/renderer/imagemanager) +$(call import-module,react/renderer/uimanager) +$(call import-module,react/renderer/components/image) +$(call import-module,react/renderer/components/view) +$(call import-module,yogajni)