isFlex helper

This commit is contained in:
Christopher Chedeau
2014-04-23 14:18:18 -07:00
parent 1937e5aacf
commit 5686e2d1bb

View File

@@ -123,6 +123,10 @@ var computeLayout = (function() {
return node.style.flex === 1; return node.style.flex === 1;
} }
function isFlex(node) {
return getPositionType(node) === CSS_POSITION_RELATIVE && getFlex(node);
}
function getDimWithMargin(node, axis) { function getDimWithMargin(node, axis) {
return node.layout[dim[axis]] + getMarginAxis(node, axis); return node.layout[dim[axis]] + getMarginAxis(node, axis);
} }
@@ -217,9 +221,7 @@ var computeLayout = (function() {
var/*int*/ absoluteChildrenCount = 0; var/*int*/ absoluteChildrenCount = 0;
for (var/*int*/ i = 0; i < node.children.length; ++i) { for (var/*int*/ i = 0; i < node.children.length; ++i) {
var/*css_node_t**/ child = node.children[i]; var/*css_node_t**/ child = node.children[i];
if (isUndefined(node.layout[dim[mainAxis]]) || if (isUndefined(node.layout[dim[mainAxis]]) || !isFlex(child)) {
getPositionType(child) === CSS_POSITION_ABSOLUTE ||
!getFlex(child)) {
layoutNode(child); layoutNode(child);
if (getPositionType(child) === CSS_POSITION_RELATIVE) { if (getPositionType(child) === CSS_POSITION_RELATIVE) {
mainContentDim += getDimWithMargin(child, mainAxis); mainContentDim += getDimWithMargin(child, mainAxis);
@@ -246,7 +248,7 @@ var computeLayout = (function() {
} }
for (var/*int*/ i = 0; i < node.children.length; ++i) { for (var/*int*/ i = 0; i < node.children.length; ++i) {
var/*css_node_t**/ child = node.children[i]; var/*css_node_t**/ child = node.children[i];
if (getPositionType(child) === CSS_POSITION_RELATIVE && getFlex(child)) { if (isFlex(child)) {
child.layout[dim[mainAxis]] = flexibleMainDim + getPaddingAndBorderAxis(child, mainAxis); child.layout[dim[mainAxis]] = flexibleMainDim + getPaddingAndBorderAxis(child, mainAxis);
layoutNode(child); layoutNode(child);
} }