Skip to content

Commit bd7bf94

Browse files
Moved leading padding function as a method on YGNode
Reviewed By: emilsjolander Differential Revision: D6711830 fbshipit-source-id: d2f6f55ec23b007bb51f8a91385e02236f46dc7b
1 parent 7f94bff commit bd7bf94

File tree

3 files changed

+20
-21
lines changed

3 files changed

+20
-21
lines changed

ReactCommon/yoga/yoga/YGNode.cpp

+15
Original file line numberDiff line numberDiff line change
@@ -630,3 +630,18 @@ float YGNode::getTrailingBorder(const YGFlexDirection flexDirection) {
630630
->value,
631631
0.0f);
632632
}
633+
634+
float YGNode::getLeadingPadding(
635+
const YGFlexDirection axis,
636+
const float widthSize) {
637+
if (YGFlexDirectionIsRow(axis) &&
638+
style_.padding[YGEdgeStart].unit != YGUnitUndefined &&
639+
YGResolveValue(style_.padding[YGEdgeStart], widthSize) >= 0.0f) {
640+
return YGResolveValue(style_.padding[YGEdgeStart], widthSize);
641+
}
642+
return fmaxf(
643+
YGResolveValue(
644+
*YGComputedEdgeValue(style_.padding, leading[axis], &YGValueZero),
645+
widthSize),
646+
0.0f);
647+
}

ReactCommon/yoga/yoga/YGNode.h

+2
Original file line numberDiff line numberDiff line change
@@ -79,6 +79,7 @@ struct YGNode {
7979
std::array<YGValue, 2> getResolvedDimensions() const;
8080
YGValue getResolvedDimension(int index);
8181

82+
// Methods related to positions, margin, padding and border
8283
float getLeadingPosition(const YGFlexDirection axis, const float axisSize);
8384
bool isLeadingPositionDefined(const YGFlexDirection axis);
8485
bool isTrailingPosDefined(const YGFlexDirection axis);
@@ -87,6 +88,7 @@ struct YGNode {
8788
float getTrailingMargin(const YGFlexDirection axis, const float widthSize);
8889
float getLeadingBorder(const YGFlexDirection flexDirection);
8990
float getTrailingBorder(const YGFlexDirection flexDirection);
91+
float getLeadingPadding(const YGFlexDirection axis, const float widthSize);
9092
// Setters
9193

9294
void setContext(void* context);

ReactCommon/yoga/yoga/Yoga.cpp

+3-21
Original file line numberDiff line numberDiff line change
@@ -762,24 +762,6 @@ static const std::array<YGEdge, 4> pos = {{
762762
static const std::array<YGDimension, 4> dim = {
763763
{YGDimensionHeight, YGDimensionHeight, YGDimensionWidth, YGDimensionWidth}};
764764

765-
static float YGNodeLeadingPadding(const YGNodeRef node,
766-
const YGFlexDirection axis,
767-
const float widthSize) {
768-
if (YGFlexDirectionIsRow(axis) &&
769-
node->getStyle().padding[YGEdgeStart].unit != YGUnitUndefined &&
770-
YGResolveValue(node->getStyle().padding[YGEdgeStart], widthSize) >=
771-
0.0f) {
772-
return YGResolveValue(node->getStyle().padding[YGEdgeStart], widthSize);
773-
}
774-
775-
return fmaxf(
776-
YGResolveValue(
777-
*YGComputedEdgeValue(
778-
node->getStyle().padding, leading[axis], &YGValueZero),
779-
widthSize),
780-
0.0f);
781-
}
782-
783765
static float YGNodeTrailingPadding(const YGNodeRef node,
784766
const YGFlexDirection axis,
785767
const float widthSize) {
@@ -801,7 +783,7 @@ static inline float YGNodeLeadingPaddingAndBorder(
801783
const YGNodeRef node,
802784
const YGFlexDirection axis,
803785
const float widthSize) {
804-
return YGNodeLeadingPadding(node, axis, widthSize) +
786+
return node->getLeadingPadding(axis, widthSize) +
805787
node->getLeadingBorder(axis);
806788
}
807789

@@ -1757,11 +1739,11 @@ static void YGNodelayoutImpl(const YGNodeRef node,
17571739
node->getTrailingBorder(flexColumnDirection), YGEdgeBottom);
17581740

17591741
node->setLayoutPadding(
1760-
YGNodeLeadingPadding(node, flexRowDirection, parentWidth), YGEdgeStart);
1742+
node->getLeadingPadding(flexRowDirection, parentWidth), YGEdgeStart);
17611743
node->setLayoutPadding(
17621744
YGNodeTrailingPadding(node, flexRowDirection, parentWidth), YGEdgeEnd);
17631745
node->setLayoutPadding(
1764-
YGNodeLeadingPadding(node, flexColumnDirection, parentWidth), YGEdgeTop);
1746+
node->getLeadingPadding(flexColumnDirection, parentWidth), YGEdgeTop);
17651747
node->setLayoutPadding(
17661748
YGNodeTrailingPadding(node, flexColumnDirection, parentWidth),
17671749
YGEdgeBottom);

0 commit comments

Comments
 (0)