From e253a6940d969f3e4856bfd4ba6cbb8ae534fa6d Mon Sep 17 00:00:00 2001 From: Joshua Gross Date: Thu, 28 Jan 2021 14:01:07 -0800 Subject: [PATCH] Support RCTModernEventEmitter+RCTEventEmitter in TouchEvent Event class Summary: Support RCTModernEventEmitter+RCTEventEmitter in an Event class(es). This improves perf in Fabric. Migrate any constructor callsites to the new constructor and deprecate the previous one. Changelog: [Internal] Reviewed By: PeteTheHeat, mdvacca Differential Revision: D26056725 fbshipit-source-id: 771e5dd4cd1aeca3d2afd1a67ee58b9ac21eda79 --- .../react/uimanager/events/TouchEvent.java | 25 +++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/TouchEvent.java b/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/TouchEvent.java index e6a58104638..fbcb97b1cc3 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/TouchEvent.java +++ b/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/TouchEvent.java @@ -30,6 +30,26 @@ public class TouchEvent extends Event { public static final long UNSET = Long.MIN_VALUE; + @Deprecated + public static TouchEvent obtain( + int viewTag, + TouchEventType touchEventType, + MotionEvent motionEventToCopy, + long gestureStartTime, + float viewX, + float viewY, + TouchEventCoalescingKeyHelper touchEventCoalescingKeyHelper) { + return obtain( + -1, + viewTag, + touchEventType, + motionEventToCopy, + gestureStartTime, + viewX, + viewY, + touchEventCoalescingKeyHelper); + } + public static TouchEvent obtain( int surfaceId, int viewTag, @@ -151,6 +171,11 @@ public class TouchEvent extends Event { this); } + @Override + public void dispatchModern(RCTModernEventEmitter rctEventEmitter) { + dispatch(rctEventEmitter); + } + public MotionEvent getMotionEvent() { Assertions.assertNotNull(mMotionEvent); return mMotionEvent;