Skip to content

Commit 67db89d

Browse files
javachemeta-codesync[bot]
authored andcommitted
Add back receiveTouches on RCTEventEmitter with default implementation (#55850)
Summary: Pull Request resolved: #55850 D91320248 removed `receiveTouches` from the `RCTEventEmitter` interface entirely. This was too big of a breaking change — ecosystem libraries that implement `RCTEventEmitter` or `RCTModernEventEmitter` and override `receiveTouches` would fail to compile. This brings back `receiveTouches` on `RCTEventEmitter` but with a default no-op implementation, so existing implementers that override it continue to compile, and new implementers don't need to provide one. Changelog: [Android][Changed] Re-added `receiveTouches` to `RCTEventEmitter` with a default no-op implementation to avoid breaking ecosystem libraries Reviewed By: cortinico Differential Revision: D94903267 fbshipit-source-id: fd89da9714b02a72c6ff271375307f620f5d2e3d
1 parent 1cd0387 commit 67db89d

File tree

2 files changed

+14
-0
lines changed

2 files changed

+14
-0
lines changed

packages/react-native/ReactAndroid/api/ReactAndroid.api

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4794,6 +4794,11 @@ public final class com/facebook/react/uimanager/events/NativeGestureUtil {
47944794

47954795
public abstract interface class com/facebook/react/uimanager/events/RCTEventEmitter : com/facebook/react/bridge/JavaScriptModule {
47964796
public abstract fun receiveEvent (ILjava/lang/String;Lcom/facebook/react/bridge/WritableMap;)V
4797+
public abstract fun receiveTouches (Ljava/lang/String;Lcom/facebook/react/bridge/WritableArray;Lcom/facebook/react/bridge/WritableArray;)V
4798+
}
4799+
4800+
public final class com/facebook/react/uimanager/events/RCTEventEmitter$DefaultImpls {
4801+
public static fun receiveTouches (Lcom/facebook/react/uimanager/events/RCTEventEmitter;Ljava/lang/String;Lcom/facebook/react/bridge/WritableArray;Lcom/facebook/react/bridge/WritableArray;)V
47974802
}
47984803

47994804
public abstract interface class com/facebook/react/uimanager/events/RCTModernEventEmitter : com/facebook/react/uimanager/events/RCTEventEmitter {
@@ -4805,6 +4810,7 @@ public abstract interface class com/facebook/react/uimanager/events/RCTModernEve
48054810
public final class com/facebook/react/uimanager/events/RCTModernEventEmitter$DefaultImpls {
48064811
public static fun receiveEvent (Lcom/facebook/react/uimanager/events/RCTModernEventEmitter;IILjava/lang/String;Lcom/facebook/react/bridge/WritableMap;)V
48074812
public static fun receiveEvent (Lcom/facebook/react/uimanager/events/RCTModernEventEmitter;ILjava/lang/String;Lcom/facebook/react/bridge/WritableMap;)V
4813+
public static fun receiveTouches (Lcom/facebook/react/uimanager/events/RCTModernEventEmitter;Ljava/lang/String;Lcom/facebook/react/bridge/WritableArray;Lcom/facebook/react/bridge/WritableArray;)V
48084814
}
48094815

48104816
public final class com/facebook/react/uimanager/events/TouchEvent : com/facebook/react/uimanager/events/Event {

packages/react-native/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/RCTEventEmitter.kt

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ package com.facebook.react.uimanager.events
99

1010
import com.facebook.proguard.annotations.DoNotStripAny
1111
import com.facebook.react.bridge.JavaScriptModule
12+
import com.facebook.react.bridge.WritableArray
1213
import com.facebook.react.bridge.WritableMap
1314
import com.facebook.react.common.annotations.internal.InteropLegacyArchitecture
1415

@@ -28,4 +29,11 @@ public interface RCTEventEmitter : JavaScriptModule {
2829
*/
2930
@Deprecated("Use [RCTModernEventEmitter.receiveEvent] instead")
3031
public fun receiveEvent(targetTag: Int, eventName: String, params: WritableMap?)
32+
33+
@Deprecated("Use [EventDispatcher] to dispatch touch events instead")
34+
public fun receiveTouches(
35+
eventName: String,
36+
touches: WritableArray,
37+
changedIndices: WritableArray,
38+
): Unit = Unit
3139
}

0 commit comments

Comments
 (0)