correctly support border with right. This is weird that border is ignored but it's the same behavior on both chrome and firefox

This commit is contained in:
Christopher Chedeau
2014-06-12 12:06:07 -07:00
parent a36820d15e
commit 6ecbf80563
2 changed files with 13 additions and 0 deletions

View File

@@ -479,6 +479,7 @@ var computeLayout = (function() {
if (!leadingPos && trailingPos) {
child.layout[pos[mainAxis]] =
node.layout[dim[mainAxis]] -
getBorder(node, trailing[mainAxis]) -
child.layout[dim[mainAxis]] -
getMargin(child, trailing[mainAxis]) -
getPosition(child, trailing[mainAxis]);
@@ -524,6 +525,7 @@ var computeLayout = (function() {
if (!leadingPos && trailingPos) {
child.layout[pos[crossAxis]] =
node.layout[dim[crossAxis]] -
getBorder(node, trailing[crossAxis]) -
child.layout[dim[crossAxis]] -
getMargin(child, trailing[crossAxis]) -
getPosition(child, trailing[crossAxis]);

View File

@@ -1005,6 +1005,17 @@ describe('Layout', function() {
);
});
it('should layout with border and right absolute child', function() {
testLayout(
{style: {borderRightWidth: 5}, children: [
{style: {right: -10, position: 'absolute'}}
]},
{width: 5, height: 0, top: 0, left: 0, children: [
{width: 0, height: 0, top: 0, left: 10}
]}
);
});
xit('should layout text with alignItems: stretch', function() {
testLayout(
{style: {width: 80, padding: 7, alignItems: 'stretch', measure: text('loooooooooong with space')}},