Chromium Code Reviews| Index: third_party/WebKit/Source/core/paint/FragmentData.h |
| diff --git a/third_party/WebKit/Source/core/paint/FragmentData.h b/third_party/WebKit/Source/core/paint/FragmentData.h |
| index 8951c3211dc9368fe926015ec3c54cdd90e26938..0eb582b4fac61911a2b408db4dedf61f847fa188 100644 |
| --- a/third_party/WebKit/Source/core/paint/FragmentData.h |
| +++ b/third_party/WebKit/Source/core/paint/FragmentData.h |
| @@ -27,12 +27,27 @@ class CORE_EXPORT FragmentData { |
| ObjectPaintProperties& EnsurePaintProperties(); |
| void ClearPaintProperties(); |
| + ClipRects* PreviousPaintingClipRects() const { |
|
wkorman
2017/05/01 20:29:24
Are there other clip rects we expect to store in F
chrishtr
2017/05/01 21:43:54
Done.
|
| + DCHECK(RuntimeEnabledFeatures::slimmingPaintInvalidationEnabled()); |
| + return previous_painting_clip_rects_.Get(); |
| + } |
| + void SetPreviousPaintingClipRects(ClipRects& clip_rects) { |
| + previous_painting_clip_rects_ = &clip_rects; |
| + } |
| + void ClearPreviousPaintingClipRects() { |
| + previous_painting_clip_rects_.Clear(); |
| + } |
| + |
| FragmentData* NextFragment() { return next_fragment_.get(); } |
| private: |
| // Holds references to the paint property nodes created by this object. |
| std::unique_ptr<ObjectPaintProperties> paint_properties_; |
| + // These are used to detect changes to clipping that might invalidate |
| + // subsequence caching or paint phase optimizations. |
| + RefPtr<ClipRects> previous_painting_clip_rects_; |
| + |
| std::unique_ptr<FragmentData> next_fragment_; |
| }; |