Chromium Code Reviews| Index: Source/core/rendering/RenderFlexibleBox.cpp |
| diff --git a/Source/core/rendering/RenderFlexibleBox.cpp b/Source/core/rendering/RenderFlexibleBox.cpp |
| index c00acbefc313719cac27c313e843e82d5934b162..ddbc258b1d77c93d1527420b15a248fc4ad14588 100644 |
| --- a/Source/core/rendering/RenderFlexibleBox.cpp |
| +++ b/Source/core/rendering/RenderFlexibleBox.cpp |
| @@ -1104,6 +1104,7 @@ void RenderFlexibleBox::layoutAndPlaceChildren(LayoutUnit& crossAxisOffset, cons |
| updateAutoMarginsInMainAxis(child, autoMarginOffset); |
| LayoutUnit childCrossAxisMarginBoxExtent; |
| + LayoutUnit crossAxisScrollbarExtentForChild = !isColumnFlow() ? child->scrollbarLogicalHeight() : child->instrinsicScrollbarLogicalWidth(); |
|
cbiesinger
2014/08/07 02:57:01
I'd really prefer you to flip the ?: around so you
harpreet.sk
2014/08/07 12:46:39
Modified the solution to use isHorizontalFlow and
|
| if (alignmentForChild(child) == ItemPositionBaseline && !hasAutoMarginsInCrossAxis(child)) { |
| LayoutUnit ascent = marginBoxAscentForChild(child); |
| LayoutUnit descent = (crossAxisMarginExtentForChild(child) + crossAxisExtentForChild(child)) - ascent; |
| @@ -1111,9 +1112,9 @@ void RenderFlexibleBox::layoutAndPlaceChildren(LayoutUnit& crossAxisOffset, cons |
| maxAscent = std::max(maxAscent, ascent); |
| maxDescent = std::max(maxDescent, descent); |
| - childCrossAxisMarginBoxExtent = maxAscent + maxDescent; |
| + childCrossAxisMarginBoxExtent = maxAscent + maxDescent + crossAxisScrollbarExtentForChild; |
|
tony
2014/08/06 16:47:22
I don't see any align-item baseline test cases tha
harpreet.sk
2014/08/07 12:46:39
Actually we should not add crossAxisScrollbarExten
|
| } else { |
| - childCrossAxisMarginBoxExtent = crossAxisIntrinsicExtentForChild(child) + crossAxisMarginExtentForChild(child); |
| + childCrossAxisMarginBoxExtent = crossAxisIntrinsicExtentForChild(child) + crossAxisMarginExtentForChild(child) + crossAxisScrollbarExtentForChild; |
| } |
| if (!isColumnFlow()) |
| setLogicalHeight(std::max(logicalHeight(), crossAxisOffset + flowAwareBorderAfter() + flowAwarePaddingAfter() + childCrossAxisMarginBoxExtent + crossAxisScrollbarExtent())); |