From 45e4a3afceb4be3047cd01a60ec2c9f806ed30fe Mon Sep 17 00:00:00 2001 From: David Vacca Date: Mon, 16 Dec 2024 18:39:54 -0800 Subject: [PATCH] Migrate ReactPointerEventsView to kotlin (#47749) Summary: Pull Request resolved: https://github.com/facebook/react-native/pull/47749 Migrate ReactPointerEventsView to kotlin changelog: [Android][Breaking] Mikgrating pointerEvents API breaks compatibility for kotlin usages of this api as a val Reviewed By: cortinico Differential Revision: D66217250 fbshipit-source-id: ff192c9f92d1df93c082b563937eb3f37176f144 --- ...ointerEventsView.java => ReactPointerEventsView.kt} | 10 ++++------ .../com/facebook/react/views/view/ReactViewManager.kt | 2 +- 2 files changed, 5 insertions(+), 7 deletions(-) rename packages/react-native/ReactAndroid/src/main/java/com/facebook/react/uimanager/{ReactPointerEventsView.java => ReactPointerEventsView.kt} (52%) diff --git a/packages/react-native/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactPointerEventsView.java b/packages/react-native/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactPointerEventsView.kt similarity index 52% rename from packages/react-native/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactPointerEventsView.java rename to packages/react-native/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactPointerEventsView.kt index cd35fb34218..0cd84c41bbc 100644 --- a/packages/react-native/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactPointerEventsView.java +++ b/packages/react-native/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactPointerEventsView.kt @@ -5,16 +5,14 @@ * LICENSE file in the root directory of this source tree. */ -package com.facebook.react.uimanager; - -import android.view.View; +package com.facebook.react.uimanager /** - * This interface should be implemented be native {@link View} subclasses that support pointer - * events handling. It is used to find the target View of a touch event. + * This interface should be implemented be native [View] subclasses that support pointer events + * handling. It is used to find the target View of a touch event. */ public interface ReactPointerEventsView { /** Return the PointerEvents of the View. */ - PointerEvents getPointerEvents(); + public fun getPointerEvents(): PointerEvents } diff --git a/packages/react-native/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewManager.kt b/packages/react-native/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewManager.kt index 3cb30f95e8a..99d64164593 100644 --- a/packages/react-native/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewManager.kt +++ b/packages/react-native/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewManager.kt @@ -207,7 +207,7 @@ public open class ReactViewManager : ReactClippingViewManager() @ReactProp(name = ViewProps.POINTER_EVENTS) public open fun setPointerEvents(view: ReactViewGroup, pointerEventsStr: String?) { - view.pointerEvents = PointerEvents.parsePointerEvents(pointerEventsStr) + view.setPointerEvents(PointerEvents.parsePointerEvents(pointerEventsStr)) } @ReactProp(name = "nativeBackgroundAndroid")