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

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

Issue 1269123002: Preparation for combining paths of focus rings and outlines (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 6a93d710c15beee74052f68bf7f72cff25d9460f..3e8df8e2dd579c8aa238f957f5b189bba3894619 100644
--- a/Source/core/layout/LayoutBoxModelObject.cpp
+++ b/Source/core/layout/LayoutBoxModelObject.cpp
@@ -373,33 +373,33 @@ void LayoutBoxModelObject::invalidateDisplayItemClientOnBacking(const DisplayIte
}
}
-void LayoutBoxModelObject::addFocusRingRectsForNormalChildren(Vector<LayoutRect>& rects, const LayoutPoint& additionalOffset) const
+void LayoutBoxModelObject::addOutlineRectsForNormalChildren(Vector<LayoutRect>& rects, const LayoutPoint& additionalOffset) const
{
for (LayoutObject* child = slowFirstChild(); child; child = child->nextSibling()) {
- // Focus rings of out-of-flow positioned descendants are handled in LayoutBlock::addFocusRingRects().
+ // Outlines of out-of-flow positioned descendants are handled in LayoutBlock::addOutlineRects().
if (child->isOutOfFlowPositioned())
continue;
- // Focus ring of an element continuation or anonymous block continuation is added when we iterate the continuation chain.
- // See LayoutBlock::addFocusRingRects() and LayoutInline::addFocusRingRects().
+ // Outline of an element continuation or anonymous block continuation is added when we iterate the continuation chain.
+ // See LayoutBlock::addOutlineRects() and LayoutInline::addOutlineRects().
if (child->isElementContinuation()
|| (child->isLayoutBlock() && toLayoutBlock(child)->isAnonymousBlockContinuation()))
continue;
- addFocusRingRectsForDescendant(*child, rects, additionalOffset);
+ addOutlineRectsForDescendant(*child, rects, additionalOffset);
}
}
-void LayoutBoxModelObject::addFocusRingRectsForDescendant(const LayoutObject& descendant, Vector<LayoutRect>& rects, const LayoutPoint& additionalOffset) const
+void LayoutBoxModelObject::addOutlineRectsForDescendant(const LayoutObject& descendant, Vector<LayoutRect>& rects, const LayoutPoint& additionalOffset) const
{
if (descendant.isText() || descendant.isListMarker())
return;
if (descendant.hasLayer()) {
- Vector<LayoutRect> layerFocusRingRects;
- descendant.addFocusRingRects(layerFocusRingRects, LayoutPoint());
- for (size_t i = 0; i < layerFocusRingRects.size(); ++i) {
- FloatQuad quadInBox = toLayoutBoxModelObject(descendant).localToContainerQuad(FloatQuad(layerFocusRingRects[i]), this);
+ Vector<LayoutRect> layerOutlineRects;
+ descendant.addOutlineRects(layerOutlineRects, LayoutPoint());
+ for (size_t i = 0; i < layerOutlineRects.size(); ++i) {
+ FloatQuad quadInBox = toLayoutBoxModelObject(descendant).localToContainerQuad(FloatQuad(layerOutlineRects[i]), this);
LayoutRect rect = LayoutRect(quadInBox.boundingBox());
if (!rect.isEmpty()) {
rect.moveBy(additionalOffset);
@@ -410,11 +410,11 @@ void LayoutBoxModelObject::addFocusRingRectsForDescendant(const LayoutObject& de
}
if (descendant.isBox()) {
- descendant.addFocusRingRects(rects, additionalOffset + toLayoutBox(descendant).locationOffset());
+ descendant.addOutlineRects(rects, additionalOffset + toLayoutBox(descendant).locationOffset());
return;
}
- descendant.addFocusRingRects(rects, additionalOffset);
+ descendant.addOutlineRects(rects, additionalOffset);
}
bool LayoutBoxModelObject::calculateHasBoxDecorations() const

Powered by Google App Engine
This is Rietveld 408576698