| Index: third_party/WebKit/Source/core/layout/PaintInvalidationState.h
|
| diff --git a/third_party/WebKit/Source/core/layout/PaintInvalidationState.h b/third_party/WebKit/Source/core/layout/PaintInvalidationState.h
|
| index 11f0a306aedea2ec64ddff721b32b704971d9eb6..7a5580067e24f3127fbc7bb10caccdfca1be6937 100644
|
| --- a/third_party/WebKit/Source/core/layout/PaintInvalidationState.h
|
| +++ b/third_party/WebKit/Source/core/layout/PaintInvalidationState.h
|
| @@ -5,6 +5,7 @@
|
| #ifndef PaintInvalidationState_h
|
| #define PaintInvalidationState_h
|
|
|
| +#include "platform/RuntimeEnabledFeatures.h"
|
| #include "platform/geometry/LayoutRect.h"
|
| #include "platform/transforms/AffineTransform.h"
|
| #include "wtf/Allocator.h"
|
| @@ -31,13 +32,16 @@ class PaintInvalidationState {
|
| DISALLOW_NEW_EXCEPT_PLACEMENT_NEW();
|
| WTF_MAKE_NONCOPYABLE(PaintInvalidationState);
|
| public:
|
| - PaintInvalidationState(PaintInvalidationState& next, LayoutBoxModelObject& layoutObject, const LayoutBoxModelObject& paintInvalidationContainer);
|
| + // For RuntimeEnabledFeatures::slimmingPaintInvalidationEnabled.
|
| + PaintInvalidationState(const PaintInvalidationState* parent, const LayoutObject&, const LayoutBoxModelObject& paintInvalidationContainer, const LayoutPoint& paintOffset);
|
| +
|
| + PaintInvalidationState(PaintInvalidationState& next, const LayoutBoxModelObject& layoutObject, const LayoutBoxModelObject& paintInvalidationContainer);
|
| PaintInvalidationState(PaintInvalidationState& next, const LayoutSVGModelObject& layoutObject);
|
|
|
| PaintInvalidationState(const LayoutView& layoutView, Vector<LayoutObject*>& pendingDelayedPaintInvalidations)
|
| : PaintInvalidationState(layoutView, pendingDelayedPaintInvalidations, nullptr) { }
|
| PaintInvalidationState(const LayoutView& layoutView, PaintInvalidationState& ownerPaintInvalidationState)
|
| - : PaintInvalidationState(layoutView, ownerPaintInvalidationState.m_pendingDelayedPaintInvalidations, &ownerPaintInvalidationState) { }
|
| + : PaintInvalidationState(layoutView, *ownerPaintInvalidationState.m_pendingDelayedPaintInvalidations, &ownerPaintInvalidationState) { }
|
|
|
| const LayoutRect& clipRect() const { return m_clipRect; }
|
| const LayoutSize& paintOffset() const { return m_paintOffset; }
|
| @@ -60,8 +64,8 @@ public:
|
| }
|
|
|
| // Records |obj| as needing paint invalidation on the next frame. See the definition of PaintInvalidationDelayedFull for more details.
|
| - void pushDelayedPaintInvalidationTarget(LayoutObject& obj) { m_pendingDelayedPaintInvalidations.append(&obj); }
|
| - Vector<LayoutObject*>& pendingDelayedPaintInvalidationTargets() { return m_pendingDelayedPaintInvalidations; }
|
| + void pushDelayedPaintInvalidationTarget(LayoutObject& obj) { ASSERT(!RuntimeEnabledFeatures::slimmingPaintInvalidationEnabled()); m_pendingDelayedPaintInvalidations->append(&obj); }
|
| + Vector<LayoutObject*>& pendingDelayedPaintInvalidationTargets() { ASSERT(!RuntimeEnabledFeatures::slimmingPaintInvalidationEnabled()); return *m_pendingDelayedPaintInvalidations; }
|
|
|
| // Disable view clipping and scroll offset adjustment for paint invalidation of FrameView scrollbars.
|
| // TODO(wangxianzhu): Remove this when root-layer-scrolls launches.
|
| @@ -99,7 +103,7 @@ private:
|
| // with |m_paintOffset| yields the "final" offset.
|
| AffineTransform m_svgTransform;
|
|
|
| - Vector<LayoutObject*>& m_pendingDelayedPaintInvalidations;
|
| + Vector<LayoutObject*>* m_pendingDelayedPaintInvalidations;
|
|
|
| PaintLayer& m_enclosingSelfPaintingLayer;
|
| };
|
|
|