react-native/ReactCommon/fabric/textlayoutmanager/platform/ios
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
..
NSTextStorage+FontScaling.h Fabric: Making `fabric/textlayoutmanager` compilable on Android 2018-07-01 21:37:00 -07:00
NSTextStorage+FontScaling.m Fabric: Making `fabric/textlayoutmanager` compilable on Android 2018-07-01 21:37:00 -07:00
RCTAttributedTextUtils.h Fabric: Making `fabric/textlayoutmanager` compilable on Android 2018-07-01 21:37:00 -07:00
RCTAttributedTextUtils.mm Simplifying child nodes management in YogaLayoutableShadowNode 2018-07-17 22:53:56 -07:00
RCTFontProperties.h Fabric: Making `fabric/textlayoutmanager` compilable on Android 2018-07-01 21:37:00 -07:00
RCTFontUtils.h Fabric: Making `fabric/textlayoutmanager` compilable on Android 2018-07-01 21:37:00 -07:00
RCTFontUtils.mm Fabric: Making `fabric/textlayoutmanager` compilable on Android 2018-07-01 21:37:00 -07:00
RCTTextLayoutManager.h Fabric: Making `fabric/textlayoutmanager` compilable on Android 2018-07-01 21:37:00 -07:00
RCTTextLayoutManager.mm Fabric: Making `fabric/textlayoutmanager` compilable on Android 2018-07-01 21:37:00 -07:00
RCTTextPrimitivesConversions.h Fabric: Making `fabric/textlayoutmanager` compilable on Android 2018-07-01 21:37:00 -07:00
TextLayoutManager.h Fabric: Making `fabric/textlayoutmanager` compilable on Android 2018-07-01 21:37:00 -07:00
TextLayoutManager.mm Fabric: Making `fabric/textlayoutmanager` compilable on Android 2018-07-01 21:37:00 -07:00