UIManager.findNodeAtPoint now returns shadowNode instead of instanceHandle

Summary:
Changelog: [Internal]

As agreed in https://fb.quip.com/Oh2mAaTAbBj6, `findNodeAtPoint` now calls callback with `shadowNode` instead of `instanceHandle`.

Reviewed By: shergin

Differential Revision: D20097269

fbshipit-source-id: bd2a1bcd26ab2510f16c3e73f628be4b1f7dacfc
This commit is contained in:
Samuel Susla 2020-02-26 04:44:52 -08:00 коммит произвёл Facebook Github Bot
Родитель f936b65883
Коммит c7f9a9e49b
2 изменённых файлов: 2 добавлений и 11 удалений

Просмотреть файл

@ -81,8 +81,6 @@ class EventEmitter {
private:
void toggleEventTargetOwnership_() const;
friend class UIManagerBinding;
mutable SharedEventTarget eventTarget_;
EventDispatcher::Weak eventDispatcher_;

Просмотреть файл

@ -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();
});
}