react-native/ReactCommon/fabric/core
Valentin Shergin e906d4cdc9 Simplifying child nodes management in YogaLayoutableShadowNode
Summary:
@public

This diff consists of many interdependent changes which support one simple idea: YogaLayoutableShadowNode is now using YGNode children to iterate on them (it previously relied on `ShadowNode::getChildren()`). All other changes are just an unavoidable consequence of that. Hence we don't need to filter child nodes every single time when we do layout anymore! The logic around `clone callback` is also drastically simpler now.
The new approach also implies that `LayoutableShadowNode` and `YogaLayoutableShadowNode` don't use `shared_ptr`s to refer to ShadowNode objects because new relationship does not imply ownership. No more `SharedShadowNode` objects in those two classes.

Reviewed By: mdvacca

Differential Revision: D8796159

fbshipit-source-id: 6f52f92d1826f3eb13b2f8a132c3ea77de155d82
2018-07-17 22:53:56 -07:00
..
componentdescriptor Simplifying child nodes management in YogaLayoutableShadowNode 2018-07-17 22:53:56 -07:00
events Remove instanceHandle, pass event target instead + add dispatchToEmptyTarget 2018-06-29 15:32:27 -07:00
layout Simplifying child nodes management in YogaLayoutableShadowNode 2018-07-17 22:53:56 -07:00
primitives Fabric: Default support of `displayType` and `layoutDirection` layout metrics 2018-06-22 11:57:40 -07:00
shadownode Simplifying child nodes management in YogaLayoutableShadowNode 2018-07-17 22:53:56 -07:00
tests Simplifying child nodes management in YogaLayoutableShadowNode 2018-07-17 22:53:56 -07:00
BUCK Fix conditional load usage. 2018-07-14 18:32:20 -07:00
conversions.h Fabric: New props treatment in `core` module 2018-05-14 16:03:49 -07:00
propsConversions.h Fabric: `fromDynamic` for float numbers was moved to `core` module 2018-06-26 11:48:12 -07:00