@@ -797,13 +797,6 @@ static const std::array<YGEdge, 4> pos = {{
797
797
static const std::array<YGDimension, 4 > dim = {
798
798
{YGDimensionHeight, YGDimensionHeight, YGDimensionWidth, YGDimensionWidth}};
799
799
800
- static inline float YGNodeMarginForAxis (const YGNodeRef node,
801
- const YGFlexDirection axis,
802
- const float widthSize) {
803
- return node->getLeadingMargin (axis, widthSize) +
804
- node->getTrailingMargin (axis, widthSize);
805
- }
806
-
807
800
static inline float YGNodePaddingAndBorderForAxis (const YGNodeRef node,
808
801
const YGFlexDirection axis,
809
802
const float widthSize) {
@@ -970,7 +963,7 @@ static void YGConstrainMaxSizeForMode(const YGNodeRef node,
970
963
const float maxSize =
971
964
YGResolveValue (
972
965
node->getStyle ().maxDimensions [dim[axis]], parentAxisSize) +
973
- YGNodeMarginForAxis ( node, axis, parentWidth);
966
+ node-> getMarginForAxis ( axis, parentWidth);
974
967
switch (*mode) {
975
968
case YGMeasureModeExactly:
976
969
case YGMeasureModeAtMost:
@@ -1044,9 +1037,9 @@ static void YGNodeComputeFlexBasisForChild(const YGNodeRef node,
1044
1037
childHeightMeasureMode = YGMeasureModeUndefined;
1045
1038
1046
1039
const float marginRow =
1047
- YGNodeMarginForAxis (child, YGFlexDirectionRow, parentWidth);
1040
+ node-> getMarginForAxis ( YGFlexDirectionRow, parentWidth);
1048
1041
const float marginColumn =
1049
- YGNodeMarginForAxis (child, YGFlexDirectionColumn, parentWidth);
1042
+ node-> getMarginForAxis ( YGFlexDirectionColumn, parentWidth);
1050
1043
1051
1044
if (isRowStyleDimDefined) {
1052
1045
childWidth =
@@ -1168,8 +1161,9 @@ static void YGNodeAbsoluteLayoutChild(const YGNodeRef node,
1168
1161
YGMeasureMode childWidthMeasureMode = YGMeasureModeUndefined;
1169
1162
YGMeasureMode childHeightMeasureMode = YGMeasureModeUndefined;
1170
1163
1171
- const float marginRow = YGNodeMarginForAxis (child, YGFlexDirectionRow, width);
1172
- const float marginColumn = YGNodeMarginForAxis (child, YGFlexDirectionColumn, width);
1164
+ const float marginRow = child->getMarginForAxis (YGFlexDirectionRow, width);
1165
+ const float marginColumn =
1166
+ child->getMarginForAxis (YGFlexDirectionColumn, width);
1173
1167
1174
1168
if (YGNodeIsStyleDimDefined (child, YGFlexDirectionRow, width)) {
1175
1169
childWidth =
@@ -1251,9 +1245,9 @@ static void YGNodeAbsoluteLayoutChild(const YGNodeRef node,
1251
1245
" abs-measure" ,
1252
1246
config);
1253
1247
childWidth = child->getLayout ().measuredDimensions [YGDimensionWidth] +
1254
- YGNodeMarginForAxis ( child, YGFlexDirectionRow, width);
1248
+ child-> getMarginForAxis ( YGFlexDirectionRow, width);
1255
1249
childHeight = child->getLayout ().measuredDimensions [YGDimensionHeight] +
1256
- YGNodeMarginForAxis ( child, YGFlexDirectionColumn, width);
1250
+ child-> getMarginForAxis ( YGFlexDirectionColumn, width);
1257
1251
}
1258
1252
1259
1253
YGLayoutNodeInternal (child,
@@ -1341,19 +1335,22 @@ static void YGNodeWithMeasureFuncSetMeasuredDimensions(const YGNodeRef node,
1341
1335
YGNodePaddingAndBorderForAxis (node, YGFlexDirectionRow, availableWidth);
1342
1336
const float paddingAndBorderAxisColumn =
1343
1337
YGNodePaddingAndBorderForAxis (node, YGFlexDirectionColumn, availableWidth);
1344
- const float marginAxisRow = YGNodeMarginForAxis (node, YGFlexDirectionRow, availableWidth);
1345
- const float marginAxisColumn = YGNodeMarginForAxis (node, YGFlexDirectionColumn, availableWidth);
1338
+ const float marginAxisRow =
1339
+ node->getMarginForAxis (YGFlexDirectionRow, availableWidth);
1340
+ const float marginAxisColumn =
1341
+ node->getMarginForAxis (YGFlexDirectionColumn, availableWidth);
1346
1342
1347
1343
// We want to make sure we don't call measure with negative size
1348
1344
const float innerWidth = YGFloatIsUndefined (availableWidth)
1349
- ? availableWidth
1350
- : fmaxf (0 , availableWidth - marginAxisRow - paddingAndBorderAxisRow);
1351
- const float innerHeight =
1352
- YGFloatIsUndefined (availableHeight)
1353
- ? availableHeight
1354
- : fmaxf (0 , availableHeight - marginAxisColumn - paddingAndBorderAxisColumn);
1355
-
1356
- if (widthMeasureMode == YGMeasureModeExactly && heightMeasureMode == YGMeasureModeExactly) {
1345
+ ? availableWidth
1346
+ : fmaxf (0 , availableWidth - marginAxisRow - paddingAndBorderAxisRow);
1347
+ const float innerHeight = YGFloatIsUndefined (availableHeight)
1348
+ ? availableHeight
1349
+ : fmaxf (
1350
+ 0 , availableHeight - marginAxisColumn - paddingAndBorderAxisColumn);
1351
+
1352
+ if (widthMeasureMode == YGMeasureModeExactly &&
1353
+ heightMeasureMode == YGMeasureModeExactly) {
1357
1354
// Don't bother sizing the text if both dimensions are already defined.
1358
1355
node->setLayoutMeasuredDimension (
1359
1356
YGNodeBoundAxis (
@@ -1415,8 +1412,10 @@ static void YGNodeEmptyContainerSetMeasuredDimensions(const YGNodeRef node,
1415
1412
YGNodePaddingAndBorderForAxis (node, YGFlexDirectionRow, parentWidth);
1416
1413
const float paddingAndBorderAxisColumn =
1417
1414
YGNodePaddingAndBorderForAxis (node, YGFlexDirectionColumn, parentWidth);
1418
- const float marginAxisRow = YGNodeMarginForAxis (node, YGFlexDirectionRow, parentWidth);
1419
- const float marginAxisColumn = YGNodeMarginForAxis (node, YGFlexDirectionColumn, parentWidth);
1415
+ const float marginAxisRow =
1416
+ node->getMarginForAxis (YGFlexDirectionRow, parentWidth);
1417
+ const float marginAxisColumn =
1418
+ node->getMarginForAxis (YGFlexDirectionColumn, parentWidth);
1420
1419
1421
1420
node->setLayoutMeasuredDimension (
1422
1421
YGNodeBoundAxis (
@@ -1453,8 +1452,10 @@ static bool YGNodeFixedSizeSetMeasuredDimensions(const YGNodeRef node,
1453
1452
if ((widthMeasureMode == YGMeasureModeAtMost && availableWidth <= 0 .0f ) ||
1454
1453
(heightMeasureMode == YGMeasureModeAtMost && availableHeight <= 0 .0f ) ||
1455
1454
(widthMeasureMode == YGMeasureModeExactly && heightMeasureMode == YGMeasureModeExactly)) {
1456
- const float marginAxisColumn = YGNodeMarginForAxis (node, YGFlexDirectionColumn, parentWidth);
1457
- const float marginAxisRow = YGNodeMarginForAxis (node, YGFlexDirectionRow, parentWidth);
1455
+ const float marginAxisColumn =
1456
+ node->getMarginForAxis (YGFlexDirectionColumn, parentWidth);
1457
+ const float marginAxisRow =
1458
+ node->getMarginForAxis (YGFlexDirectionRow, parentWidth);
1458
1459
1459
1460
node->setLayoutMeasuredDimension (
1460
1461
YGNodeBoundAxis (
@@ -1508,7 +1509,7 @@ static float YGNodeCalculateAvailableInnerDim(
1508
1509
YGDimension dimension =
1509
1510
YGFlexDirectionIsRow (axis) ? YGDimensionWidth : YGDimensionHeight;
1510
1511
1511
- const float margin = YGNodeMarginForAxis ( node, direction, parentDim);
1512
+ const float margin = node-> getMarginForAxis ( direction, parentDim);
1512
1513
const float paddingAndBorder =
1513
1514
YGNodePaddingAndBorderForAxis (node, direction, parentDim);
1514
1515
@@ -1607,8 +1608,7 @@ static void YGNodeComputeFlexBasisForChildren(
1607
1608
}
1608
1609
1609
1610
totalOuterFlexBasis += child->getLayout ().computedFlexBasis +
1610
- YGNodeMarginForAxis (child, mainAxis, availableInnerWidth);
1611
- ;
1611
+ child->getMarginForAxis (mainAxis, availableInnerWidth);
1612
1612
}
1613
1613
}
1614
1614
@@ -1642,7 +1642,7 @@ static YGCollectFlexItemsRowValues YGCalculateCollectFlexItemsRowValues(
1642
1642
}
1643
1643
child->setLineIndex (lineCount);
1644
1644
const float childMarginMainAxis =
1645
- YGNodeMarginForAxis ( child, mainAxis, availableInnerWidth);
1645
+ child-> getMarginForAxis ( mainAxis, availableInnerWidth);
1646
1646
const float flexBasisWithMinAndMaxConstraints =
1647
1647
YGNodeBoundAxisWithinMinAndMax (
1648
1648
child,
@@ -1769,10 +1769,10 @@ static float YGDistributeFreeSpaceSecondPass(
1769
1769
1770
1770
deltaFreeSpace += updatedMainSize - childFlexBasis;
1771
1771
1772
- const float marginMain = YGNodeMarginForAxis (
1773
- currentRelativeChild, mainAxis, availableInnerWidth);
1774
- const float marginCross = YGNodeMarginForAxis (
1775
- currentRelativeChild, crossAxis, availableInnerWidth);
1772
+ const float marginMain =
1773
+ currentRelativeChild-> getMarginForAxis ( mainAxis, availableInnerWidth);
1774
+ const float marginCross =
1775
+ currentRelativeChild-> getMarginForAxis ( crossAxis, availableInnerWidth);
1776
1776
1777
1777
float childCrossSize;
1778
1778
float childMainSize = updatedMainSize + marginMain;
@@ -2171,7 +2171,7 @@ static void YGJustifyMainAxis(
2171
2171
// they weren't computed. This means we can't call
2172
2172
// YGNodeDimWithMargin.
2173
2173
collectedFlexItemsValues.mainDim += betweenMainDim +
2174
- YGNodeMarginForAxis ( child, mainAxis, availableInnerWidth) +
2174
+ child-> getMarginForAxis ( mainAxis, availableInnerWidth) +
2175
2175
childLayout.computedFlexBasis ;
2176
2176
collectedFlexItemsValues.crossDim = availableInnerCrossDim;
2177
2177
} else {
@@ -2401,8 +2401,10 @@ static void YGNodelayoutImpl(const YGNodeRef node,
2401
2401
const float paddingAndBorderAxisColumn =
2402
2402
isMainAxisRow ? paddingAndBorderAxisCross : paddingAndBorderAxisMain;
2403
2403
2404
- const float marginAxisRow = YGNodeMarginForAxis (node, YGFlexDirectionRow, parentWidth);
2405
- const float marginAxisColumn = YGNodeMarginForAxis (node, YGFlexDirectionColumn, parentWidth);
2404
+ const float marginAxisRow =
2405
+ node->getMarginForAxis (YGFlexDirectionRow, parentWidth);
2406
+ const float marginAxisColumn =
2407
+ node->getMarginForAxis (YGFlexDirectionColumn, parentWidth);
2406
2408
2407
2409
const float minInnerWidth =
2408
2410
YGResolveValue (
@@ -2664,14 +2666,14 @@ static void YGNodelayoutImpl(const YGNodeRef node,
2664
2666
child->getLayout ().measuredDimensions [dim[mainAxis]];
2665
2667
float childCrossSize =
2666
2668
!YGFloatIsUndefined (child->getStyle ().aspectRatio )
2667
- ? ((YGNodeMarginForAxis (
2668
- child, crossAxis, availableInnerWidth) +
2669
+ ? ((child->getMarginForAxis (crossAxis, availableInnerWidth) +
2669
2670
(isMainAxisRow
2670
2671
? childMainSize / child->getStyle ().aspectRatio
2671
2672
: childMainSize * child->getStyle ().aspectRatio )))
2672
2673
: collectedFlexItemsValues.crossDim ;
2673
2674
2674
- childMainSize += YGNodeMarginForAxis (child, mainAxis, availableInnerWidth);
2675
+ childMainSize +=
2676
+ child->getMarginForAxis (mainAxis, availableInnerWidth);
2675
2677
2676
2678
YGMeasureMode childMainMeasureMode = YGMeasureModeExactly;
2677
2679
YGMeasureMode childCrossMeasureMode = YGMeasureModeExactly;
@@ -2808,16 +2810,16 @@ static void YGNodelayoutImpl(const YGNodeRef node,
2808
2810
lineHeight = fmaxf (
2809
2811
lineHeight,
2810
2812
child->getLayout ().measuredDimensions [dim[crossAxis]] +
2811
- YGNodeMarginForAxis ( child, crossAxis, availableInnerWidth));
2813
+ child-> getMarginForAxis ( crossAxis, availableInnerWidth));
2812
2814
}
2813
2815
if (YGNodeAlignItem (node, child) == YGAlignBaseline) {
2814
2816
const float ascent = YGBaseline (child) +
2815
2817
child->getLeadingMargin (
2816
2818
YGFlexDirectionColumn, availableInnerWidth);
2817
2819
const float descent =
2818
2820
child->getLayout ().measuredDimensions [YGDimensionHeight] +
2819
- YGNodeMarginForAxis (
2820
- child, YGFlexDirectionColumn, availableInnerWidth) -
2821
+ child-> getMarginForAxis (
2822
+ YGFlexDirectionColumn, availableInnerWidth) -
2821
2823
ascent;
2822
2824
maxAscentForCurrentLine = fmaxf (maxAscentForCurrentLine, ascent);
2823
2825
maxDescentForCurrentLine = fmaxf (maxDescentForCurrentLine, descent);
@@ -2873,15 +2875,14 @@ static void YGNodelayoutImpl(const YGNodeRef node,
2873
2875
const float childWidth = isMainAxisRow
2874
2876
? (child->getLayout ()
2875
2877
.measuredDimensions [YGDimensionWidth] +
2876
- YGNodeMarginForAxis (
2877
- child, mainAxis, availableInnerWidth))
2878
+ child->getMarginForAxis (mainAxis, availableInnerWidth))
2878
2879
: lineHeight;
2879
2880
2880
2881
const float childHeight = !isMainAxisRow
2881
2882
? (child->getLayout ()
2882
2883
.measuredDimensions [YGDimensionHeight] +
2883
- YGNodeMarginForAxis (
2884
- child, crossAxis, availableInnerWidth))
2884
+ child-> getMarginForAxis (
2885
+ crossAxis, availableInnerWidth))
2885
2886
: lineHeight;
2886
2887
2887
2888
if (!(YGFloatsEqual (
@@ -3251,8 +3252,10 @@ bool YGLayoutNodeInternal(const YGNodeRef node,
3251
3252
// expensive to measure, so it's worth avoiding redundant measurements if at
3252
3253
// all possible.
3253
3254
if (node->getMeasure () != nullptr ) {
3254
- const float marginAxisRow = YGNodeMarginForAxis (node, YGFlexDirectionRow, parentWidth);
3255
- const float marginAxisColumn = YGNodeMarginForAxis (node, YGFlexDirectionColumn, parentWidth);
3255
+ const float marginAxisRow =
3256
+ node->getMarginForAxis (YGFlexDirectionRow, parentWidth);
3257
+ const float marginAxisColumn =
3258
+ node->getMarginForAxis (YGFlexDirectionColumn, parentWidth);
3256
3259
3257
3260
// First, try to use the layout cache.
3258
3261
if (YGNodeCanUseCachedMeasurement (widthMeasureMode,
@@ -3527,7 +3530,7 @@ void YGNodeCalculateLayout(const YGNodeRef node,
3527
3530
width =
3528
3531
YGResolveValue (
3529
3532
node->getResolvedDimension (dim[YGFlexDirectionRow]), parentWidth) +
3530
- YGNodeMarginForAxis ( node, YGFlexDirectionRow, parentWidth);
3533
+ node-> getMarginForAxis ( YGFlexDirectionRow, parentWidth);
3531
3534
widthMeasureMode = YGMeasureModeExactly;
3532
3535
} else if (
3533
3536
YGResolveValue (
@@ -3547,7 +3550,7 @@ void YGNodeCalculateLayout(const YGNodeRef node,
3547
3550
height = YGResolveValue (
3548
3551
node->getResolvedDimension (dim[YGFlexDirectionColumn]),
3549
3552
parentHeight) +
3550
- YGNodeMarginForAxis ( node, YGFlexDirectionColumn, parentWidth);
3553
+ node-> getMarginForAxis ( YGFlexDirectionColumn, parentWidth);
3551
3554
heightMeasureMode = YGMeasureModeExactly;
3552
3555
} else if (
3553
3556
YGResolveValue (
0 commit comments