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

Unified Diff: Source/core/layout/LayoutBoxModelObject.cpp

Issue 1280543005: Refactor LayoutInline::addOutlineRects to avoid tricky logic to avoid dups (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Created 5 years, 4 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: Source/core/layout/LayoutBoxModelObject.cpp
diff --git a/Source/core/layout/LayoutBoxModelObject.cpp b/Source/core/layout/LayoutBoxModelObject.cpp
index 322bb7e4a5ebb6323025e044c5ed1568a0ac6880..96bebfea7f0dcd84f47244740ac09f48c4d4c761 100644
--- a/Source/core/layout/LayoutBoxModelObject.cpp
+++ b/Source/core/layout/LayoutBoxModelObject.cpp
@@ -414,6 +414,13 @@ void LayoutBoxModelObject::addOutlineRectsForDescendant(const LayoutObject& desc
return;
}
+ if (descendant.isLayoutInline()) {
+ // Some ancestor of the LayoutInline has already added outline rects for line boxes,
chrishtr 2015/08/10 20:14:47 Add to this: // The rects are computed by an ance
Xianzhu 2015/08/10 21:52:32 Done.
+ // so the LayoutInline needs to add outline rects for children and continuations only.
+ toLayoutInline(descendant).addOutlineRectsForChildrenAndContinuations(rects, additionalOffset);
+ return;
+ }
+
descendant.addOutlineRects(rects, additionalOffset);
}

Powered by Google App Engine
This is Rietveld 408576698