Index: Source/core/layout/LayoutBox.cpp |
diff --git a/Source/core/layout/LayoutBox.cpp b/Source/core/layout/LayoutBox.cpp |
index 4db3b1211060bcd2331339ed0ae4bfcf8dbd22dc..eb135636cd9f5892b18d4884ee096469bc8949d0 100644 |
--- a/Source/core/layout/LayoutBox.cpp |
+++ b/Source/core/layout/LayoutBox.cpp |
@@ -4116,23 +4116,15 @@ LayoutRectOutsets LayoutBox::computeVisualEffectOverflowOutsets() const |
} |
if (style()->hasOutline()) { |
+ Vector<LayoutRect> outlineRects; |
+ // The result rects are in coordinates of this object's border box. |
+ addOutlineRects(outlineRects, LayoutPoint()); |
+ LayoutRect rect = unionRect(outlineRects); |
int outlineOutset = style()->outlineOutsetExtent(); |
- if (style()->outlineStyleIsAuto()) { |
- // The result focus ring rects are in coordinates of this object's border box. |
- Vector<LayoutRect> focusRingRects; |
- addOutlineRects(focusRingRects, LayoutPoint()); |
- LayoutRect rect = unionRect(focusRingRects); |
- |
- top = std::max(top, -rect.y() + outlineOutset); |
- right = std::max(right, rect.maxX() - size().width() + outlineOutset); |
- bottom = std::max(bottom, rect.maxY() - size().height() + outlineOutset); |
- left = std::max(left, -rect.x() + outlineOutset); |
- } else { |
- top = std::max<LayoutUnit>(top, outlineOutset); |
- right = std::max<LayoutUnit>(right, outlineOutset); |
- bottom = std::max<LayoutUnit>(bottom, outlineOutset); |
- left = std::max<LayoutUnit>(left, outlineOutset); |
- } |
+ top = std::max(top, -rect.y() + outlineOutset); |
+ right = std::max(right, rect.maxX() - size().width() + outlineOutset); |
+ bottom = std::max(bottom, rect.maxY() - size().height() + outlineOutset); |
+ left = std::max(left, -rect.x() + outlineOutset); |
} |
return LayoutRectOutsets(top, right, bottom, left); |