react-native-macos/ReactCommon/fabric/components
Valentin Shergin 78b1c85747 Fabric: Simplifying Yoga and Fabric integration
Summary:
The integration with Yoga was pretty complex from day one. The first attempt to make it simpler was in D19963353 when we removed a bunch of layers of indirection. This is the second iteration that aimed to simplify the structure of methods and their responsibilities.

The only conceptual change (that I am aware of) in this diff is that now we don't support (imaginary) case where a non-leaf YogaLayoutableShadowNode can have a non-YogaLayoutableShadowNode child. In the previous version, it was a no-op, now it's not supported and an assert will fire.

Alongside with refactoring, this diff implements several helper functions that verify the invariants important for the Concurrent Layout in debug mode.

Changelog: [Internal] Fabric-specific internal change.

Reviewed By: JoshuaGross

Differential Revision: D21198222

fbshipit-source-id: cc085904948056f861562af5bd2571de45a743b9
2020-04-23 15:00:46 -07:00
..
activityindicator Replace fbsource// with // in xplat/js/ files [1] 2020-03-25 21:55:47 -07:00
image Fabric: `ConcreteShadowNode::initialStateData()` now accepts a `ShadowNodeFamilyFragment` instead of just a `SurfaceId` 2020-04-22 15:41:55 -07:00
legacyviewmanagerinterop Replace fbsource// with // in xplat/js/ files [1] 2020-03-25 21:55:47 -07:00
modal Fabric: `componentregistry` module was decoupled from `uimanager` 2020-04-18 15:00:21 -07:00
picker Fabric: `componentregistry` module was decoupled from `uimanager` 2020-04-18 15:00:21 -07:00
root Replace fbsource// with // in xplat/js/ files [1] 2020-03-25 21:55:47 -07:00
safeareaview Replace fbsource// with // in xplat/js/ files [1] 2020-03-25 21:55:47 -07:00
scrollview Replace fbsource// with // in xplat/js/ files [1] 2020-03-25 21:55:47 -07:00
slider Fabric: `ConcreteShadowNode::initialStateData()` now accepts a `ShadowNodeFamilyFragment` instead of just a `SurfaceId` 2020-04-22 15:41:55 -07:00
switch Fabric: `componentregistry` module was decoupled from `uimanager` 2020-04-18 15:00:21 -07:00
text Fabric: `componentregistry` module was decoupled from `uimanager` 2020-04-18 15:00:21 -07:00
textinput Fabric: `componentregistry` module was decoupled from `uimanager` 2020-04-18 15:00:21 -07:00
unimplementedview Replace fbsource// with // in xplat/js/ files [1] 2020-03-25 21:55:47 -07:00
view Fabric: Simplifying Yoga and Fabric integration 2020-04-23 15:00:46 -07:00