Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(505)

Unified Diff: third_party/WebKit/Source/core/layout/LayoutBox.cpp

Issue 2863933003: Remove the parameter of LayoutBox::XXXOverflowRectForPropagation() (Closed)
Patch Set: - Created 3 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: third_party/WebKit/Source/core/layout/LayoutBox.cpp
diff --git a/third_party/WebKit/Source/core/layout/LayoutBox.cpp b/third_party/WebKit/Source/core/layout/LayoutBox.cpp
index b444f085dec4cc13af15ad17437124e04d3f59c5..42f7aafeb4580e99b7b31662346f89f4448171fe 100644
--- a/third_party/WebKit/Source/core/layout/LayoutBox.cpp
+++ b/third_party/WebKit/Source/core/layout/LayoutBox.cpp
@@ -5064,10 +5064,10 @@ void LayoutBox::AddOverflowFromChild(const LayoutBox& child,
// Only propagate layout overflow from the child if the child isn't clipping
// its overflow. If it is, then its overflow is internal to it, and we don't
- // care about it. layoutOverflowRectForPropagation takes care of this and just
+ // care about it. LayoutOverflowRectForPropagation takes care of this and just
// propagates the border box rect instead.
LayoutRect child_layout_overflow_rect =
- child.LayoutOverflowRectForPropagation(StyleRef());
+ child.LayoutOverflowRectForPropagation();
child_layout_overflow_rect.Move(delta);
AddLayoutOverflow(child_layout_overflow_rect);
@@ -5078,7 +5078,7 @@ void LayoutBox::AddOverflowFromChild(const LayoutBox& child,
if (child.HasSelfPaintingLayer())
return;
LayoutRect child_visual_overflow_rect =
- child.VisualOverflowRectForPropagation(StyleRef());
+ child.VisualOverflowRectForPropagation();
child_visual_overflow_rect.Move(delta);
AddContentsVisualOverflow(child_visual_overflow_rect);
}
@@ -5276,45 +5276,38 @@ PaintLayer* LayoutBox::EnclosingFloatPaintingLayer() const {
return nullptr;
}
-LayoutRect LayoutBox::LogicalVisualOverflowRectForPropagation(
- const ComputedStyle& parent_style) const {
- LayoutRect rect = VisualOverflowRectForPropagation(parent_style);
- if (!parent_style.IsHorizontalWritingMode())
+LayoutRect LayoutBox::LogicalVisualOverflowRectForPropagation() const {
+ LayoutRect rect = VisualOverflowRectForPropagation();
+ if (!Parent()->StyleRef().IsHorizontalWritingMode())
return rect.TransposedRect();
return rect;
}
DISABLE_CFI_PERF
-LayoutRect LayoutBox::VisualOverflowRectForPropagation(
- const ComputedStyle& parent_style) const {
- // If the writing modes of the child and parent match, then we don't have to
- // do anything fancy. Just return the result.
- LayoutRect rect = VisualOverflowRect();
- if (parent_style.GetWritingMode() == Style()->GetWritingMode())
+LayoutRect LayoutBox::RectForOverflowPropagation(const LayoutRect& rect) const {
+ // If the child and parent are in the same blocks direction, then we don't
+ // have to do anything fancy. Just return the rect.
+ if (Parent()->StyleRef().IsFlippedBlocksWritingMode() ==
+ StyleRef().IsFlippedBlocksWritingMode())
return rect;
- // We are putting ourselves into our parent's coordinate space. If there is a
- // flipped block mismatch in a particular axis, then we have to flip the rect
- // along that axis.
- if (IsFlippedBlocksWritingMode(Style()->GetWritingMode()) ||
- IsFlippedBlocksWritingMode(parent_style.GetWritingMode()))
- rect.SetX(Size().Width() - rect.MaxX());
-
- return rect;
+ // Convert the rect into parent's blocks direction by flipping along the y
+ // axis.
+ LayoutRect result = rect;
+ result.SetX(Size().Width() - rect.MaxX());
+ return result;
}
DISABLE_CFI_PERF
-LayoutRect LayoutBox::LogicalLayoutOverflowRectForPropagation(
- const ComputedStyle& parent_style) const {
- LayoutRect rect = LayoutOverflowRectForPropagation(parent_style);
- if (!parent_style.IsHorizontalWritingMode())
+LayoutRect LayoutBox::LogicalLayoutOverflowRectForPropagation() const {
+ LayoutRect rect = LayoutOverflowRectForPropagation();
+ if (!Parent()->StyleRef().IsHorizontalWritingMode())
return rect.TransposedRect();
return rect;
}
DISABLE_CFI_PERF
-LayoutRect LayoutBox::LayoutOverflowRectForPropagation(
- const ComputedStyle& parent_style) const {
+LayoutRect LayoutBox::LayoutOverflowRectForPropagation() const {
// Only propagate interior layout overflow if we don't clip it.
LayoutRect rect = BorderBoxRect();
// We want to include the margin, but only when it adds height. Quirky margins
@@ -5344,19 +5337,7 @@ LayoutRect LayoutBox::LayoutOverflowRectForPropagation(
FlipForWritingMode(rect);
}
- // If the writing modes of the child and parent match, then we don't have to
- // do anything fancy. Just return the result.
- if (parent_style.GetWritingMode() == Style()->GetWritingMode())
- return rect;
-
- // We are putting ourselves into our parent's coordinate space. If there is a
- // flipped block mismatch in a particular axis, then we have to flip the rect
- // along that axis.
- if (IsFlippedBlocksWritingMode(Style()->GetWritingMode()) ||
- IsFlippedBlocksWritingMode(parent_style.GetWritingMode()))
- rect.SetX(Size().Width() - rect.MaxX());
-
- return rect;
+ return RectForOverflowPropagation(rect);
}
DISABLE_CFI_PERF
« no previous file with comments | « third_party/WebKit/Source/core/layout/LayoutBox.h ('k') | third_party/WebKit/Source/core/layout/LayoutBoxTest.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698