Permalink
Browse files

Add justify-content: space-evenly

Summary:
Adds new ```space-evenly``` for ```justify-content```.

Also adds a typofix in one of the other justify-content tests.

Fixes #657
Closes facebook/yoga#658

Differential Revision: D6407996

Pulled By: emilsjolander

fbshipit-source-id: cc837409e1345624b4bd72c31e25fe68dcb0f6a3
  • Loading branch information...
woehrl01 authored and facebook-github-bot committed Nov 27, 2017
1 parent 1d62848 commit 1050e0b47611602b758f73d99f51a1dd5ceabade
@@ -17,7 +17,8 @@
CENTER(1),
FLEX_END(2),
SPACE_BETWEEN(3),
SPACE_AROUND(4);
SPACE_AROUND(4),
SPACE_EVENLY(5);
private int mIntValue;
@@ -36,6 +37,8 @@ public static YogaJustify fromInt(int value) {
case 2: return FLEX_END;
case 3: return SPACE_BETWEEN;
case 4: return SPACE_AROUND;
case 5:
return SPACE_EVENLY;
default: throw new IllegalArgumentException("Unknown enum value: " + value);
}
}
@@ -121,6 +121,8 @@ const char *YGJustifyToString(const YGJustify value){
return "space-between";
case YGJustifySpaceAround:
return "space-around";
case YGJustifySpaceEvenly:
return "space-evenly";
}
return "unknown";
}
@@ -77,13 +77,14 @@ typedef YG_ENUM_BEGIN(YGFlexDirection) {
} YG_ENUM_END(YGFlexDirection);
WIN_EXPORT const char *YGFlexDirectionToString(const YGFlexDirection value);
#define YGJustifyCount 5
typedef YG_ENUM_BEGIN(YGJustify) {
YGJustifyFlexStart,
YGJustifyCenter,
YGJustifyFlexEnd,
YGJustifySpaceBetween,
YGJustifySpaceAround,
#define YGJustifyCount 6
typedef YG_ENUM_BEGIN(YGJustify){
YGJustifyFlexStart,
YGJustifyCenter,
YGJustifyFlexEnd,
YGJustifySpaceBetween,
YGJustifySpaceAround,
YGJustifySpaceEvenly,
} YG_ENUM_END(YGJustify);
WIN_EXPORT const char *YGJustifyToString(const YGJustify value);
@@ -2447,6 +2447,11 @@ static void YGNodelayoutImpl(const YGNodeRef node,
betweenMainDim = 0;
}
break;
case YGJustifySpaceEvenly:
// Space is distributed evenly across all elements
betweenMainDim = remainingFreeSpace / (itemsOnLine + 1);
leadingMainDim = betweenMainDim;
break;
case YGJustifySpaceAround:
// Space on the edges is half of the space between elements
betweenMainDim = remainingFreeSpace / itemsOnLine;

0 comments on commit 1050e0b

Please sign in to comment.