From fddf7aaad188d5adf35a12a3869fab034fafca63 Mon Sep 17 00:00:00 2001 From: David Vacca Date: Wed, 6 Nov 2024 00:01:07 -0800 Subject: [PATCH] Migrate ReactHorizontalScrollContainerViewManager to use ViewManagerInterface (#47395) Summary: Pull Request resolved: https://github.com/facebook/react-native/pull/47395 Migrate ReactHorizontalScrollContainerViewManager to use ViewManagerInterface changelog: [internal] internal Reviewed By: cortinico Differential Revision: D65428646 fbshipit-source-id: 7e36f3642ac31aa747c2b7f21c251173516fffad --- .../react-native/ReactAndroid/api/ReactAndroid.api | 4 +++- .../ReactHorizontalScrollContainerViewManager.kt | 11 ++++++++++- 2 files changed, 13 insertions(+), 2 deletions(-) diff --git a/packages/react-native/ReactAndroid/api/ReactAndroid.api b/packages/react-native/ReactAndroid/api/ReactAndroid.api index f3a39e6d149..34f2e907269 100644 --- a/packages/react-native/ReactAndroid/api/ReactAndroid.api +++ b/packages/react-native/ReactAndroid/api/ReactAndroid.api @@ -6801,14 +6801,16 @@ public final class com/facebook/react/views/scroll/OnScrollDispatchHelper { public final fun onScrollChanged (II)Z } -public final class com/facebook/react/views/scroll/ReactHorizontalScrollContainerViewManager : com/facebook/react/views/view/ReactViewManager { +public final class com/facebook/react/views/scroll/ReactHorizontalScrollContainerViewManager : com/facebook/react/views/view/ReactViewManager, com/facebook/react/viewmanagers/AndroidHorizontalScrollContentViewManagerInterface { public static final field Companion Lcom/facebook/react/views/scroll/ReactHorizontalScrollContainerViewManager$Companion; public static final field REACT_CLASS Ljava/lang/String; public fun ()V public synthetic fun createViewInstance (ILcom/facebook/react/uimanager/ThemedReactContext;Lcom/facebook/react/uimanager/ReactStylesDiffMap;Lcom/facebook/react/uimanager/StateWrapper;)Landroid/view/View; public synthetic fun createViewInstance (Lcom/facebook/react/uimanager/ThemedReactContext;)Landroid/view/View; public fun createViewInstance (Lcom/facebook/react/uimanager/ThemedReactContext;)Lcom/facebook/react/views/view/ReactViewGroup; + public fun getDelegate ()Lcom/facebook/react/uimanager/ViewManagerDelegate; public fun getName ()Ljava/lang/String; + public synthetic fun setRemoveClippedSubviews (Landroid/view/View;Z)V } public final class com/facebook/react/views/scroll/ReactHorizontalScrollContainerViewManager$Companion { diff --git a/packages/react-native/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollContainerViewManager.kt b/packages/react-native/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollContainerViewManager.kt index c9d6c01e065..a82070f6295 100644 --- a/packages/react-native/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollContainerViewManager.kt +++ b/packages/react-native/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollContainerViewManager.kt @@ -11,16 +11,25 @@ import com.facebook.react.module.annotations.ReactModule import com.facebook.react.uimanager.ReactStylesDiffMap import com.facebook.react.uimanager.StateWrapper import com.facebook.react.uimanager.ThemedReactContext +import com.facebook.react.uimanager.ViewManagerDelegate import com.facebook.react.uimanager.common.UIManagerType import com.facebook.react.uimanager.common.ViewUtil +import com.facebook.react.viewmanagers.AndroidHorizontalScrollContentViewManagerDelegate +import com.facebook.react.viewmanagers.AndroidHorizontalScrollContentViewManagerInterface import com.facebook.react.views.view.ReactViewGroup import com.facebook.react.views.view.ReactViewManager /** View manager for {@link ReactHorizontalScrollContainerView} components. */ @ReactModule(name = ReactHorizontalScrollContainerViewManager.REACT_CLASS) -public class ReactHorizontalScrollContainerViewManager : ReactViewManager() { +public class ReactHorizontalScrollContainerViewManager : + ReactViewManager(), AndroidHorizontalScrollContentViewManagerInterface { override public fun getName(): String = REACT_CLASS + private val delegate: ViewManagerDelegate = + AndroidHorizontalScrollContentViewManagerDelegate(this) + + public override fun getDelegate(): ViewManagerDelegate = delegate + protected override fun createViewInstance( reactTag: Int, context: ThemedReactContext,