diff --git a/ReactCommon/fabric/core/events/EventEmitter.h b/ReactCommon/fabric/core/events/EventEmitter.h index 91db82ed3a6..db11b43007a 100644 --- a/ReactCommon/fabric/core/events/EventEmitter.h +++ b/ReactCommon/fabric/core/events/EventEmitter.h @@ -81,8 +81,6 @@ class EventEmitter { private: void toggleEventTargetOwnership_() const; - friend class UIManagerBinding; - mutable SharedEventTarget eventTarget_; EventDispatcher::Weak eventDispatcher_; diff --git a/ReactCommon/fabric/uimanager/UIManagerBinding.cpp b/ReactCommon/fabric/uimanager/UIManagerBinding.cpp index c300bcc828b..c57af017cd6 100644 --- a/ReactCommon/fabric/uimanager/UIManagerBinding.cpp +++ b/ReactCommon/fabric/uimanager/UIManagerBinding.cpp @@ -268,15 +268,8 @@ jsi::Value UIManagerBinding::get( arguments[3].getObject(runtime).getFunction(runtime); auto targetNode = uiManager->findNodeAtPoint(node, Point{locationX, locationY}); - auto &eventTarget = targetNode->getEventEmitter()->eventTarget_; - - EventEmitter::DispatchMutex().lock(); - eventTarget->retain(runtime); - auto instanceHandle = eventTarget->getInstanceHandle(runtime); - eventTarget->release(runtime); - EventEmitter::DispatchMutex().unlock(); - - onSuccessFunction.call(runtime, std::move(instanceHandle)); + + onSuccessFunction.call(runtime, valueFromShadowNode(runtime, targetNode)); return jsi::Value::undefined(); }); }