Index: Source/core/rendering/RenderObject.h |
diff --git a/Source/core/rendering/RenderObject.h b/Source/core/rendering/RenderObject.h |
index a4d483d79055044d9442017b0163d0681bb7a0f1..e17253b3044d0ee16ada04ddc698262f7c213eaa 100644 |
--- a/Source/core/rendering/RenderObject.h |
+++ b/Source/core/rendering/RenderObject.h |
@@ -117,6 +117,20 @@ enum MapCoordinatesMode { |
}; |
typedef unsigned MapCoordinatesFlags; |
+enum InvalidationReason { |
+ InvalidationIncremental, |
+ InvalidationSelfLayout, |
+ InvalidationBorderFitLines, |
+ InvalidationBorderRadius, |
+ InvalidationBoundsChangeWithBackground, |
+ InvalidationBoundsChange, |
+ InvalidationScroll, |
+ InvalidationSelection, |
+ InvalidationLayer, |
+ InvalidationRepaint, |
+ InvalidationRepaintRectangle |
+}; |
+ |
const int caretWidth = 1; |
struct AnnotatedRegionValue { |
@@ -801,9 +815,10 @@ public: |
// if painting is root-relative. This is the container that should be passed to the 'forRepaint' |
// methods. |
RenderLayerModelObject* containerForRepaint() 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. |
- void repaintUsingContainer(const RenderLayerModelObject* repaintContainer, const IntRect&) const; |
+ void repaintUsingContainer(const RenderLayerModelObject* repaintContainer, const IntRect&, InvalidationReason) const; |
// Repaint the entire object. Called when, e.g., the color of a border changes, or when a border |
// style changes. |
@@ -1068,6 +1083,7 @@ private: |
#ifndef NDEBUG |
void checkBlockPositionedObjectsNeedLayout(); |
#endif |
+ const char* invalidationReasonToString(InvalidationReason) const; |
RefPtr<RenderStyle> m_style; |