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

Unified Diff: Source/core/rendering/RenderObject.h

Issue 264183002: RAL: Eliminate n^2 walk to find repaint containers (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Fix for SVG Created 6 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: Source/core/rendering/RenderObject.h
diff --git a/Source/core/rendering/RenderObject.h b/Source/core/rendering/RenderObject.h
index bbd53eedf4cffd918e1f61829cb4e775fa519cde..936c7039b4ac95534274ac2369101e5249643452 100644
--- a/Source/core/rendering/RenderObject.h
+++ b/Source/core/rendering/RenderObject.h
@@ -814,6 +814,9 @@ public:
// if painting is root-relative. This is the container that should be passed to the 'forRepaint'
// methods.
RenderLayerModelObject* containerForRepaint() const;
+ RenderLayerModelObject* enclosingCompositedContainer() const;
+ RenderLayerModelObject* adjustCompositedContainerForSpecialAncestors(RenderLayerModelObject* repaintContainer) const;
+ bool isRepaintContainer() const;
// Actually do the repaint of rect r for this object which has been computed in the coordinate space
// of repaintContainer. If repaintContainer is 0, repaint via the view.
@@ -831,7 +834,7 @@ public:
const LayoutRect& oldBounds, const LayoutPoint& oldPositionFromRepaintContainer, const LayoutRect* newBoundsPtr = 0, const LayoutPoint* newPositionFromRepaintContainer = 0);
// Walk the tree after layout repainting renderers that have changed or moved, updating bounds that have changed, and clearing repaint state.
- virtual void repaintTreeAfterLayout();
+ virtual void repaintTreeAfterLayout(RenderLayerModelObject& repaintContainer);
virtual void repaintOverflow();
void repaintOverflowIfNeeded();

Powered by Google App Engine
This is Rietveld 408576698