Change the type of getTrailingPosition to YGFloatOptional
Summary: Change the type of getTrailingPosition to YGFloatOptional Reviewed By: emilsjolander Differential Revision: D7344710 fbshipit-source-id: eb4c422b6e0f55d90b083221aa8ff1ab797d58a8
This commit is contained in:
committed by
Facebook Github Bot
parent
572546088f
commit
2b714a5b5d
@@ -104,14 +104,14 @@ YGFloatOptional YGNode::getLeadingPosition(
|
||||
: YGResolveValue(*leadingPosition, axisSize);
|
||||
}
|
||||
|
||||
float YGNode::getTrailingPosition(
|
||||
const YGFlexDirection axis,
|
||||
const float axisSize) const {
|
||||
YGFloatOptional YGNode::getTrailingPosition(
|
||||
const YGFlexDirection& axis,
|
||||
const float& axisSize) const {
|
||||
if (YGFlexDirectionIsRow(axis)) {
|
||||
const YGValue* trailingPosition =
|
||||
YGComputedEdgeValue(style_.position, YGEdgeEnd, &YGValueUndefined);
|
||||
if (trailingPosition->unit != YGUnitUndefined) {
|
||||
return YGUnwrapFloatOptional(YGResolveValue(*trailingPosition, axisSize));
|
||||
return YGResolveValue(*trailingPosition, axisSize);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -119,8 +119,8 @@ float YGNode::getTrailingPosition(
|
||||
YGComputedEdgeValue(style_.position, trailing[axis], &YGValueUndefined);
|
||||
|
||||
return trailingPosition->unit == YGUnitUndefined
|
||||
? 0.0f
|
||||
: YGUnwrapFloatOptional(YGResolveValue(*trailingPosition, axisSize));
|
||||
? YGFloatOptional(0)
|
||||
: YGResolveValue(*trailingPosition, axisSize);
|
||||
}
|
||||
|
||||
bool YGNode::isLeadingPositionDefined(const YGFlexDirection axis) const {
|
||||
@@ -345,7 +345,7 @@ float YGNode::relativePosition(
|
||||
const float axisSize) {
|
||||
return isLeadingPositionDefined(axis)
|
||||
? YGUnwrapFloatOptional(getLeadingPosition(axis, axisSize))
|
||||
: -getTrailingPosition(axis, axisSize);
|
||||
: -YGUnwrapFloatOptional(getTrailingPosition(axis, axisSize));
|
||||
}
|
||||
|
||||
void YGNode::setPosition(
|
||||
|
@@ -89,7 +89,9 @@ struct YGNode {
|
||||
const float& axisSize) const;
|
||||
bool isLeadingPositionDefined(const YGFlexDirection axis) const;
|
||||
bool isTrailingPosDefined(const YGFlexDirection axis) const;
|
||||
float getTrailingPosition(const YGFlexDirection axis, const float axisSize) const;
|
||||
YGFloatOptional getTrailingPosition(
|
||||
const YGFlexDirection& axis,
|
||||
const float& axisSize) const;
|
||||
float getLeadingMargin(const YGFlexDirection axis, const float widthSize) const;
|
||||
float getTrailingMargin(const YGFlexDirection axis, const float widthSize) const;
|
||||
float getLeadingBorder(const YGFlexDirection& flexDirection) const;
|
||||
|
@@ -1408,8 +1408,8 @@ static void YGNodeAbsoluteLayoutChild(const YGNodeRef node,
|
||||
childWidth = node->getLayout().measuredDimensions[YGDimensionWidth] -
|
||||
(node->getLeadingBorder(YGFlexDirectionRow) +
|
||||
node->getTrailingBorder(YGFlexDirectionRow)) -
|
||||
(YGUnwrapFloatOptional(
|
||||
child->getLeadingPosition(YGFlexDirectionRow, width)) +
|
||||
YGUnwrapFloatOptional(
|
||||
child->getLeadingPosition(YGFlexDirectionRow, width) +
|
||||
child->getTrailingPosition(YGFlexDirectionRow, width));
|
||||
childWidth = YGNodeBoundAxis(child, YGFlexDirectionRow, childWidth, width, width);
|
||||
}
|
||||
@@ -1425,11 +1425,12 @@ static void YGNodeAbsoluteLayoutChild(const YGNodeRef node,
|
||||
// offsets if they're defined.
|
||||
if (child->isLeadingPositionDefined(YGFlexDirectionColumn) &&
|
||||
child->isTrailingPosDefined(YGFlexDirectionColumn)) {
|
||||
childHeight = node->getLayout().measuredDimensions[YGDimensionHeight] -
|
||||
childHeight =
|
||||
node->getLayout().measuredDimensions[YGDimensionHeight] -
|
||||
(node->getLeadingBorder(YGFlexDirectionColumn) +
|
||||
node->getTrailingBorder(YGFlexDirectionColumn)) -
|
||||
(YGUnwrapFloatOptional(
|
||||
child->getLeadingPosition(YGFlexDirectionColumn, height)) +
|
||||
YGUnwrapFloatOptional(
|
||||
child->getLeadingPosition(YGFlexDirectionColumn, height) +
|
||||
child->getTrailingPosition(YGFlexDirectionColumn, height));
|
||||
childHeight = YGNodeBoundAxis(child, YGFlexDirectionColumn, childHeight, height, width);
|
||||
}
|
||||
@@ -1503,8 +1504,8 @@ static void YGNodeAbsoluteLayoutChild(const YGNodeRef node,
|
||||
child->getLayout().measuredDimensions[dim[mainAxis]] -
|
||||
node->getTrailingBorder(mainAxis) -
|
||||
child->getTrailingMargin(mainAxis, width) -
|
||||
child->getTrailingPosition(
|
||||
mainAxis, isMainAxisRow ? width : height),
|
||||
YGUnwrapFloatOptional(child->getTrailingPosition(
|
||||
mainAxis, isMainAxisRow ? width : height)),
|
||||
leading[mainAxis]);
|
||||
} else if (
|
||||
!child->isLeadingPositionDefined(mainAxis) &&
|
||||
@@ -1530,8 +1531,8 @@ static void YGNodeAbsoluteLayoutChild(const YGNodeRef node,
|
||||
child->getLayout().measuredDimensions[dim[crossAxis]] -
|
||||
node->getTrailingBorder(crossAxis) -
|
||||
child->getTrailingMargin(crossAxis, width) -
|
||||
child->getTrailingPosition(
|
||||
crossAxis, isMainAxisRow ? height : width),
|
||||
YGUnwrapFloatOptional(child->getTrailingPosition(
|
||||
crossAxis, isMainAxisRow ? height : width)),
|
||||
leading[crossAxis]);
|
||||
|
||||
} else if (
|
||||
|
Reference in New Issue
Block a user