Commit 6ce9854 1 parent 678d5f7 commit 6ce9854 Copy full SHA for 6ce9854
File tree 4 files changed +33
-26
lines changed
ReactAndroid/src/main/java/com/facebook/yoga
4 files changed +33
-26
lines changed Original file line number Diff line number Diff line change 8
8
9
9
public enum LayoutPassReason {
10
10
INITIAL (0 ),
11
- MEASURE (1 ),
12
- ABS_MEASURE (2 ),
13
- FLEX (3 ),
14
- ABS_LAYOUT (4 ),
15
- STRETCH (5 ),
16
- MULTILINE_STRETCH (6 );
11
+ ABS_LAYOUT (1 ),
12
+ STRETCH (2 ),
13
+ MULTILINE_STRETCH (3 ),
14
+ FLEX_LAYOUT (4 ),
15
+ MEASURE (5 ),
16
+ ABS_MEASURE (6 ),
17
+ FLEX_MEASURE (7 );
17
18
18
19
private final int mIntValue ;
19
20
@@ -28,12 +29,13 @@ public int intValue() {
28
29
public static LayoutPassReason fromInt (int value ) {
29
30
switch (value ) {
30
31
case 0 : return INITIAL ;
31
- case 1 : return MEASURE ;
32
- case 2 : return ABS_MEASURE ;
33
- case 3 : return FLEX ;
34
- case 4 : return ABS_LAYOUT ;
35
- case 5 : return STRETCH ;
36
- case 6 : return MULTILINE_STRETCH ;
32
+ case 1 : return ABS_LAYOUT ;
33
+ case 2 : return STRETCH ;
34
+ case 3 : return MULTILINE_STRETCH ;
35
+ case 4 : return FLEX_LAYOUT ;
36
+ case 5 : return MEASURE ;
37
+ case 6 : return ABS_MEASURE ;
38
+ case 7 : return FLEX_MEASURE ;
37
39
default : throw new IllegalArgumentException ("Unknown enum value: " + value );
38
40
}
39
41
}
Original file line number Diff line number Diff line change @@ -2185,6 +2185,7 @@ static float YGDistributeFreeSpaceSecondPass(
2185
2185
const YGMeasureMode childHeightMeasureMode =
2186
2186
!isMainAxisRow ? childMainMeasureMode : childCrossMeasureMode;
2187
2187
2188
+ const bool isLayoutPass = performLayout && !requiresStretchLayout;
2188
2189
// Recursively call the layout algorithm for this child with the updated
2189
2190
// main size.
2190
2191
YGLayoutNodeInternal (
@@ -2196,8 +2197,9 @@ static float YGDistributeFreeSpaceSecondPass(
2196
2197
childHeightMeasureMode,
2197
2198
availableInnerWidth,
2198
2199
availableInnerHeight,
2199
- performLayout && !requiresStretchLayout,
2200
- LayoutPassReason::kFlex ,
2200
+ isLayoutPass,
2201
+ isLayoutPass ? LayoutPassReason::kFlexLayout
2202
+ : LayoutPassReason::kFlexMeasure ,
2201
2203
config,
2202
2204
layoutMarkerData,
2203
2205
layoutContext,
Original file line number Diff line number Diff line change @@ -16,18 +16,20 @@ const char* LayoutPassReasonToString(const LayoutPassReason value) {
16
16
switch (value) {
17
17
case LayoutPassReason::kInitial :
18
18
return " initial" ;
19
- case LayoutPassReason::kMeasureChild :
20
- return " measure" ;
21
- case LayoutPassReason::kAbsMeasureChild :
22
- return " abs_measure" ;
23
- case LayoutPassReason::kFlex :
24
- return " flex" ;
25
19
case LayoutPassReason::kAbsLayout :
26
20
return " abs_layout" ;
27
21
case LayoutPassReason::kStretch :
28
22
return " stretch" ;
29
23
case LayoutPassReason::kMultilineStretch :
30
24
return " multiline_stretch" ;
25
+ case LayoutPassReason::kFlexLayout :
26
+ return " flex_layout" ;
27
+ case LayoutPassReason::kMeasureChild :
28
+ return " measure" ;
29
+ case LayoutPassReason::kAbsMeasureChild :
30
+ return " abs_measure" ;
31
+ case LayoutPassReason::kFlexMeasure :
32
+ return " flex_measure" ;
31
33
default :
32
34
return " unknown" ;
33
35
}
Original file line number Diff line number Diff line change @@ -34,12 +34,13 @@ struct LayoutData {
34
34
35
35
enum struct LayoutPassReason : int {
36
36
kInitial = 0 ,
37
- kMeasureChild = 1 ,
38
- kAbsMeasureChild = 2 ,
39
- kFlex = 3 ,
40
- kAbsLayout = 4 ,
41
- kStretch = 5 ,
42
- kMultilineStretch = 6
37
+ kAbsLayout = 1 ,
38
+ kStretch = 2 ,
39
+ kMultilineStretch = 3 ,
40
+ kFlexLayout = 4 ,
41
+ kMeasureChild = 5 ,
42
+ kAbsMeasureChild = 6 ,
43
+ kFlexMeasure = 7
43
44
};
44
45
45
46
const char * LayoutPassReasonToString (const LayoutPassReason value);
You can’t perform that action at this time.
0 commit comments