in litho-core/src/main/java/com/facebook/litho/LithoNode.java [968:1052]
protected static void applyLayoutStyleAttributes(YogaLayoutProps props, TypedArray a) {
for (int i = 0, size = a.getIndexCount(); i < size; i++) {
final int attr = a.getIndex(i);
if (attr == com.facebook.litho.R.styleable.ComponentLayout_android_layout_width) {
int width = a.getLayoutDimension(attr, -1);
// We don't support WRAP_CONTENT or MATCH_PARENT so no-op for them
if (width >= 0) {
props.widthPx(width);
}
} else if (attr == com.facebook.litho.R.styleable.ComponentLayout_android_layout_height) {
int height = a.getLayoutDimension(attr, -1);
// We don't support WRAP_CONTENT or MATCH_PARENT so no-op for them
if (height >= 0) {
props.heightPx(height);
}
} else if (attr == com.facebook.litho.R.styleable.ComponentLayout_android_minHeight) {
props.minHeightPx(a.getDimensionPixelSize(attr, 0));
} else if (attr == com.facebook.litho.R.styleable.ComponentLayout_android_minWidth) {
props.minWidthPx(a.getDimensionPixelSize(attr, 0));
} else if (attr == com.facebook.litho.R.styleable.ComponentLayout_android_paddingLeft) {
props.paddingPx(LEFT, a.getDimensionPixelOffset(attr, 0));
} else if (attr == com.facebook.litho.R.styleable.ComponentLayout_android_paddingTop) {
props.paddingPx(TOP, a.getDimensionPixelOffset(attr, 0));
} else if (attr == com.facebook.litho.R.styleable.ComponentLayout_android_paddingRight) {
props.paddingPx(RIGHT, a.getDimensionPixelOffset(attr, 0));
} else if (attr == com.facebook.litho.R.styleable.ComponentLayout_android_paddingBottom) {
props.paddingPx(BOTTOM, a.getDimensionPixelOffset(attr, 0));
} else if (attr == com.facebook.litho.R.styleable.ComponentLayout_android_paddingStart
&& SUPPORTS_RTL) {
props.paddingPx(START, a.getDimensionPixelOffset(attr, 0));
} else if (attr == com.facebook.litho.R.styleable.ComponentLayout_android_paddingEnd
&& SUPPORTS_RTL) {
props.paddingPx(END, a.getDimensionPixelOffset(attr, 0));
} else if (attr == com.facebook.litho.R.styleable.ComponentLayout_android_padding) {
props.paddingPx(ALL, a.getDimensionPixelOffset(attr, 0));
} else if (attr == com.facebook.litho.R.styleable.ComponentLayout_android_layout_marginLeft) {
props.marginPx(LEFT, a.getDimensionPixelOffset(attr, 0));
} else if (attr == com.facebook.litho.R.styleable.ComponentLayout_android_layout_marginTop) {
props.marginPx(TOP, a.getDimensionPixelOffset(attr, 0));
} else if (attr
== com.facebook.litho.R.styleable.ComponentLayout_android_layout_marginRight) {
props.marginPx(RIGHT, a.getDimensionPixelOffset(attr, 0));
} else if (attr
== com.facebook.litho.R.styleable.ComponentLayout_android_layout_marginBottom) {
props.marginPx(BOTTOM, a.getDimensionPixelOffset(attr, 0));
} else if (attr == com.facebook.litho.R.styleable.ComponentLayout_android_layout_marginStart
&& SUPPORTS_RTL) {
props.marginPx(START, a.getDimensionPixelOffset(attr, 0));
} else if (attr == com.facebook.litho.R.styleable.ComponentLayout_android_layout_marginEnd
&& SUPPORTS_RTL) {
props.marginPx(END, a.getDimensionPixelOffset(attr, 0));
} else if (attr == com.facebook.litho.R.styleable.ComponentLayout_android_layout_margin) {
props.marginPx(ALL, a.getDimensionPixelOffset(attr, 0));
} else if (attr == com.facebook.litho.R.styleable.ComponentLayout_flex_direction) {
props.flexDirection(YogaFlexDirection.fromInt(a.getInteger(attr, 0)));
} else if (attr == com.facebook.litho.R.styleable.ComponentLayout_flex_wrap) {
props.wrap(YogaWrap.fromInt(a.getInteger(attr, 0)));
} else if (attr == com.facebook.litho.R.styleable.ComponentLayout_flex_justifyContent) {
props.justifyContent(YogaJustify.fromInt(a.getInteger(attr, 0)));
} else if (attr == com.facebook.litho.R.styleable.ComponentLayout_flex_alignItems) {
props.alignItems(YogaAlign.fromInt(a.getInteger(attr, 0)));
} else if (attr == com.facebook.litho.R.styleable.ComponentLayout_flex_alignSelf) {
props.alignSelf(YogaAlign.fromInt(a.getInteger(attr, 0)));
} else if (attr == com.facebook.litho.R.styleable.ComponentLayout_flex_positionType) {
props.positionType(YogaPositionType.fromInt(a.getInteger(attr, 0)));
} else if (attr == com.facebook.litho.R.styleable.ComponentLayout_flex_layoutDirection) {
final int layoutDirection = a.getInteger(attr, -1);
props.layoutDirection(YogaDirection.fromInt(layoutDirection));
} else if (attr == com.facebook.litho.R.styleable.ComponentLayout_flex) {
final float flex = a.getFloat(attr, -1);
if (flex >= 0f) {
props.flex(flex);
}
} else if (attr == com.facebook.litho.R.styleable.ComponentLayout_flex_left) {
props.positionPx(LEFT, a.getDimensionPixelOffset(attr, 0));
} else if (attr == com.facebook.litho.R.styleable.ComponentLayout_flex_top) {
props.positionPx(TOP, a.getDimensionPixelOffset(attr, 0));
} else if (attr == com.facebook.litho.R.styleable.ComponentLayout_flex_right) {
props.positionPx(RIGHT, a.getDimensionPixelOffset(attr, 0));
} else if (attr == com.facebook.litho.R.styleable.ComponentLayout_flex_bottom) {
props.positionPx(BOTTOM, a.getDimensionPixelOffset(attr, 0));
}
}
}