Index: third_party/WebKit/Source/core/layout/LayoutReplaced.cpp |
diff --git a/third_party/WebKit/Source/core/layout/LayoutReplaced.cpp b/third_party/WebKit/Source/core/layout/LayoutReplaced.cpp |
index 30083fe450ccfbbde78c61341aea6eb856c11d7c..a3464c09452461f6023656fbdcee4cae23c8b134 100644 |
--- a/third_party/WebKit/Source/core/layout/LayoutReplaced.cpp |
+++ b/third_party/WebKit/Source/core/layout/LayoutReplaced.cpp |
@@ -265,18 +265,18 @@ void LayoutReplaced::computePositionedLogicalWidth(LogicalExtentComputedValues& |
logicalRightValue = valueForLength(logicalRight, containerLogicalWidth); |
LayoutUnit difference = availableSpace - (logicalLeftValue + logicalRightValue); |
- if (difference > 0) { |
+ if (difference > LayoutUnit()) { |
marginLogicalLeftAlias = difference / 2; // split the difference |
marginLogicalRightAlias = difference - marginLogicalLeftAlias; // account for odd valued differences |
} else { |
// Use the containing block's direction rather than the parent block's |
// per CSS 2.1 reference test abspos-replaced-width-margin-000. |
if (containerDirection == LTR) { |
- marginLogicalLeftAlias = 0; |
+ marginLogicalLeftAlias = LayoutUnit(); |
marginLogicalRightAlias = difference; // will be negative |
} else { |
marginLogicalLeftAlias = difference; // will be negative |
- marginLogicalRightAlias = 0; |
+ marginLogicalRightAlias = LayoutUnit(); |
} |
} |
@@ -559,7 +559,7 @@ LayoutUnit LayoutReplaced::computeReplacedLogicalWidth(ShouldComputePreferred sh |
// If 'height' and 'width' both have computed values of 'auto' and the element also has an intrinsic width, then that intrinsic width is the used value of 'width'. |
if (computedHeightIsAuto && hasIntrinsicWidth) |
- return computeReplacedLogicalWidthRespectingMinMaxWidth(constrainedSize.width(), shouldComputePreferred); |
+ return computeReplacedLogicalWidthRespectingMinMaxWidth(LayoutUnit(constrainedSize.width()), shouldComputePreferred); |
bool hasIntrinsicHeight = constrainedSize.height() > 0; |
if (intrinsicRatio) { |
@@ -568,7 +568,7 @@ LayoutUnit LayoutReplaced::computeReplacedLogicalWidth(ShouldComputePreferred sh |
// of 'width' is: (used height) * (intrinsic ratio) |
if (intrinsicRatio && ((computedHeightIsAuto && !hasIntrinsicWidth && hasIntrinsicHeight) || !computedHeightIsAuto)) { |
LayoutUnit logicalHeight = computeReplacedLogicalHeight(); |
- return computeReplacedLogicalWidthRespectingMinMaxWidth(logicalHeight * intrinsicRatio, shouldComputePreferred); |
+ return computeReplacedLogicalWidthRespectingMinMaxWidth(LayoutUnit(logicalHeight * intrinsicRatio), shouldComputePreferred); |
} |
// If 'height' and 'width' both have computed values of 'auto' and the element has an intrinsic ratio but no intrinsic height or width, then the used value of |
@@ -576,7 +576,7 @@ LayoutUnit LayoutReplaced::computeReplacedLogicalWidth(ShouldComputePreferred sh |
// the used value of 'width' is calculated from the constraint equation used for block-level, non-replaced elements in normal flow. |
if (computedHeightIsAuto && !hasIntrinsicWidth && !hasIntrinsicHeight) { |
if (shouldComputePreferred == ComputePreferred) |
- return computeReplacedLogicalWidthRespectingMinMaxWidth(0, ComputePreferred); |
+ return computeReplacedLogicalWidthRespectingMinMaxWidth(LayoutUnit(), ComputePreferred); |
// The aforementioned 'constraint equation' used for block-level, non-replaced elements in normal flow: |
// 'margin-left' + 'border-left-width' + 'padding-left' + 'width' + 'padding-right' + 'border-right-width' + 'margin-right' = width of containing block |
LayoutUnit logicalWidth = containingBlock()->availableLogicalWidth(); |
@@ -591,7 +591,7 @@ LayoutUnit LayoutReplaced::computeReplacedLogicalWidth(ShouldComputePreferred sh |
// Otherwise, if 'width' has a computed value of 'auto', and the element has an intrinsic width, then that intrinsic width is the used value of 'width'. |
if (hasIntrinsicWidth) |
- return computeReplacedLogicalWidthRespectingMinMaxWidth(constrainedSize.width(), shouldComputePreferred); |
+ return computeReplacedLogicalWidthRespectingMinMaxWidth(LayoutUnit(constrainedSize.width()), shouldComputePreferred); |
// Otherwise, if 'width' has a computed value of 'auto', but none of the conditions above are met, then the used value of 'width' becomes 300px. If 300px is too |
// wide to fit the device, UAs should use the width of the largest rectangle that has a 2:1 ratio and fits the device instead. |
@@ -626,11 +626,11 @@ LayoutUnit LayoutReplaced::computeReplacedLogicalHeight() const |
// Otherwise, if 'height' has a computed value of 'auto', and the element has an intrinsic ratio then the used value of 'height' is: |
// (used width) / (intrinsic ratio) |
if (intrinsicRatio) |
- return computeReplacedLogicalHeightRespectingMinMaxHeight(availableLogicalWidth() / intrinsicRatio); |
+ return computeReplacedLogicalHeightRespectingMinMaxHeight(LayoutUnit(availableLogicalWidth() / intrinsicRatio)); |
// Otherwise, if 'height' has a computed value of 'auto', and the element has an intrinsic height, then that intrinsic height is the used value of 'height'. |
if (hasIntrinsicHeight) |
- return computeReplacedLogicalHeightRespectingMinMaxHeight(constrainedSize.height()); |
+ return computeReplacedLogicalHeightRespectingMinMaxHeight(LayoutUnit(constrainedSize.height())); |
// Otherwise, if 'height' has a computed value of 'auto', but none of the conditions above are met, then the used value of 'height' must be set to the height |
// of the largest rectangle that has a 2:1 ratio, has a height not greater than 150px, and has a width not greater than the device width. |
@@ -656,7 +656,7 @@ void LayoutReplaced::computePreferredLogicalWidths() |
const ComputedStyle& styleToUse = styleRef(); |
if (styleToUse.logicalWidth().hasPercent() || styleToUse.logicalMaxWidth().hasPercent()) |
- m_minPreferredLogicalWidth = 0; |
+ m_minPreferredLogicalWidth = LayoutUnit(); |
if (styleToUse.logicalMinWidth().isFixed() && styleToUse.logicalMinWidth().value() > 0) { |
m_maxPreferredLogicalWidth = std::max(m_maxPreferredLogicalWidth, adjustContentBoxLogicalWidthForBoxSizing(styleToUse.logicalMinWidth().value())); |