Chromium Code Reviews| 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..86db405939273ef9411e4a86975c2c5ac8348d92 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 slimmingPaintInvalidation. |
|
pdr.
2016/03/11 02:56:41
Can you add the runtime enabled features part here
Xianzhu
2016/03/11 20:03:44
Done.
|
| + 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; |
| }; |