yay, now supports negative spacing!

This commit is contained in:
Christopher Chedeau
2014-04-22 11:51:04 -07:00
parent dc8d706e4e
commit e9f45ef4e9
2 changed files with 19 additions and 5 deletions

View File

@@ -46,6 +46,20 @@ var computeLayout = (function() {
return 0; return 0;
} }
function getPositiveSpacing(node, type, suffix, location) {
var key = type + capitalizeFirst(location) + suffix;
if (key in node.style && node.style[key] >= 0) {
return node.style[key];
}
key = type + suffix;
if (key in node.style && node.style[key] >= 0) {
return node.style[key];
}
return 0;
}
function isUndefined(value) { function isUndefined(value) {
return value == undefined; return value == undefined;
} }
@@ -55,11 +69,11 @@ var computeLayout = (function() {
} }
function getPadding(node, location) { function getPadding(node, location) {
return getSpacing(node, 'padding', '', location); return getPositiveSpacing(node, 'padding', '', location);
} }
function getBorder(node, location) { function getBorder(node, location) {
return getSpacing(node, 'border', 'Width', location); return getPositiveSpacing(node, 'border', 'Width', location);
} }
function getPaddingAndBorder(node, location) { function getPaddingAndBorder(node, location) {

View File

@@ -761,9 +761,9 @@ describe('Layout', function() {
randMinMax(node, 0.5, 'left', -10, 10); randMinMax(node, 0.5, 'left', -10, 10);
randMinMax(node, 0.5, 'right', -10, 10); randMinMax(node, 0.5, 'right', -10, 10);
randMinMax(node, 0.5, 'bottom', -10, 10); randMinMax(node, 0.5, 'bottom', -10, 10);
randSpacing(node, 0.5, 'margin', '', 0, 20); randSpacing(node, 0.5, 'margin', '', -10, 20);
randSpacing(node, 0.5, 'padding', '', 0, 20); randSpacing(node, 0.5, 'padding', '', -10, 20);
randSpacing(node, 0.5, 'border', 'Width', 0, 4); randSpacing(node, 0.5, 'border', 'Width', -4, 4);
randEnum(node, 0.5, 'flexDirection', ['column', 'row']); randEnum(node, 0.5, 'flexDirection', ['column', 'row']);
randEnum(node, 0.5, 'justifyContent', ['flex-start', 'center', 'flex-end', 'space-between', 'space-around']); randEnum(node, 0.5, 'justifyContent', ['flex-start', 'center', 'flex-end', 'space-between', 'space-around']);
randEnum(node, 0.5, 'alignItems', ['flex-start', 'center', 'flex-end', 'stretch']); randEnum(node, 0.5, 'alignItems', ['flex-start', 'center', 'flex-end', 'stretch']);