Index: Source/core/rendering/RenderInline.cpp |
diff --git a/Source/core/rendering/RenderInline.cpp b/Source/core/rendering/RenderInline.cpp |
index 802732c0f5f72098f7cce116e6e11ae04e76402b..a67fa996dddc220c9f423155df0ab560721367d8 100644 |
--- a/Source/core/rendering/RenderInline.cpp |
+++ b/Source/core/rendering/RenderInline.cpp |
@@ -1363,24 +1363,6 @@ void RenderInline::imageChanged(WrappedImagePtr, const IntRect*) |
setShouldDoFullPaintInvalidation(true); |
} |
-void RenderInline::addFocusRingRects(Vector<IntRect>& rects, const LayoutPoint& additionalOffset, const RenderLayerModelObject* paintContainer) const |
-{ |
- AbsoluteRectsGeneratorContext context(rects, additionalOffset); |
- generateLineBoxRects(context); |
- |
- addChildFocusRingRects(rects, additionalOffset, paintContainer); |
- |
- if (continuation()) { |
- // If the continuation doesn't paint into the same container, let its paint invalidation container handle it. |
- if (paintContainer != continuation()->containerForPaintInvalidation()) |
- return; |
- if (continuation()->isInline()) |
- continuation()->addFocusRingRects(rects, flooredLayoutPoint(additionalOffset + continuation()->containingBlock()->location() - containingBlock()->location()), paintContainer); |
- else |
- continuation()->addFocusRingRects(rects, flooredLayoutPoint(additionalOffset + toRenderBox(continuation())->location() - containingBlock()->location()), paintContainer); |
- } |
-} |
- |
namespace { |
class AbsoluteLayoutRectsGeneratorContext { |
@@ -1402,6 +1384,25 @@ private: |
} |
+void RenderInline::addFocusRingRects(Vector<LayoutRect>& rects, const LayoutPoint& additionalOffset, const RenderLayerModelObject* paintContainer) const |
+{ |
+ AbsoluteLayoutRectsGeneratorContext context(rects, additionalOffset); |
+ generateLineBoxRects(context); |
+ |
+ addChildFocusRingRects(rects, additionalOffset, paintContainer); |
+ |
+ if (continuation()) { |
+ // If the continuation doesn't paint into the same container, let its paint invalidation container handle it. |
+ if (paintContainer != continuation()->containerForPaintInvalidation()) |
+ return; |
+ LayoutPoint continuationAdditionalOffset = additionalOffset; |
+ continuationAdditionalOffset.move(continuation()->isInline() |
+ ? continuation()->containingBlock()->location() - containingBlock()->location() |
+ : toRenderBox(continuation())->location() - containingBlock()->location()); |
Julien - ping for review
2014/08/20 22:12:31
I found the previous structure more readable.
We
Xianzhu
2014/09/04 00:29:12
Done.
|
+ continuation()->addFocusRingRects(rects, continuationAdditionalOffset, paintContainer); |
+ } |
+} |
+ |
void RenderInline::computeSelfHitTestRects(Vector<LayoutRect>& rects, const LayoutPoint& layerOffset) const |
{ |
AbsoluteLayoutRectsGeneratorContext context(rects, layerOffset); |