Back out "UIManager.findNodeAtPoint now returns shadowNode instead of instanceHandle"
Summary: Original commit changeset: bd2a1bcd26ab changelog: [Internal] Reviewed By: mdvacca Differential Revision: D20196869 fbshipit-source-id: 53235dc3475d79f9e3545c9aa42171f23137be5a
This commit is contained in:
Родитель
08dda02347
Коммит
58347677f9
|
@ -81,6 +81,8 @@ class EventEmitter {
|
|||
private:
|
||||
void toggleEventTargetOwnership_() const;
|
||||
|
||||
friend class UIManagerBinding;
|
||||
|
||||
mutable SharedEventTarget eventTarget_;
|
||||
|
||||
EventDispatcher::Weak eventDispatcher_;
|
||||
|
|
|
@ -268,8 +268,15 @@ jsi::Value UIManagerBinding::get(
|
|||
arguments[3].getObject(runtime).getFunction(runtime);
|
||||
auto targetNode =
|
||||
uiManager->findNodeAtPoint(node, Point{locationX, locationY});
|
||||
|
||||
onSuccessFunction.call(runtime, valueFromShadowNode(runtime, targetNode));
|
||||
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));
|
||||
return jsi::Value::undefined();
|
||||
});
|
||||
}
|
||||
|
|
Загрузка…
Ссылка в новой задаче