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

Side by Side Diff: third_party/WebKit/Source/core/paint/PaintInvalidator.h

Issue 2332353003: Fix clip and offset issues of slimmingPaintInvalidation for SPv1 (Closed)
Patch Set: Filter Created 4 years, 3 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 unified diff | Download patch
OLDNEW
1 // Copyright 2016 The Chromium Authors. All rights reserved. 1 // Copyright 2016 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef PaintInvalidator_h 5 #ifndef PaintInvalidator_h
6 #define PaintInvalidator_h 6 #define PaintInvalidator_h
7 7
8 #include "platform/geometry/LayoutRect.h" 8 #include "platform/geometry/LayoutRect.h"
9 #include "platform/graphics/paint/GeometryMapper.h" 9 #include "platform/graphics/paint/GeometryMapper.h"
10 #include "wtf/Vector.h" 10 #include "wtf/Vector.h"
(...skipping 22 matching lines...) Expand all
33 // for code shared by old code and new code. 33 // for code shared by old code and new code.
34 virtual void mapLocalRectToPaintInvalidationBacking(const LayoutObject&, Lay outRect&) const; 34 virtual void mapLocalRectToPaintInvalidationBacking(const LayoutObject&, Lay outRect&) const;
35 35
36 const PaintPropertyTreeBuilderContext& treeBuilderContext; 36 const PaintPropertyTreeBuilderContext& treeBuilderContext;
37 37
38 enum ForcedSubtreeInvalidationFlag { 38 enum ForcedSubtreeInvalidationFlag {
39 ForcedSubtreeInvalidationChecking = 1 << 0, 39 ForcedSubtreeInvalidationChecking = 1 << 0,
40 ForcedSubtreeInvalidationRectUpdate = 1 << 1, 40 ForcedSubtreeInvalidationRectUpdate = 1 << 1,
41 ForcedSubtreeFullInvalidation = 1 << 2, 41 ForcedSubtreeFullInvalidation = 1 << 2,
42 ForcedSubtreeFullInvalidationForStackedContents = 1 << 3, 42 ForcedSubtreeFullInvalidationForStackedContents = 1 << 3,
43 // TODO(crbug.com/637313): This is temporary before we support filters i n paint property tree.
44 ForcedSubtreeSlowPathRect = 1 << 4,
43 }; 45 };
44 unsigned forcedSubtreeInvalidationFlags = 0; 46 unsigned forcedSubtreeInvalidationFlags = 0;
45 47
46 // The following fields can be null only before PaintInvalidator::updateCont ext(). 48 // The following fields can be null only before PaintInvalidator::updateCont ext().
47 49
48 // The current paint invalidation container for normal flow objects. 50 // The current paint invalidation container for normal flow objects.
49 // It is the enclosing composited object. 51 // It is the enclosing composited object.
50 const LayoutBoxModelObject* paintInvalidationContainer = nullptr; 52 const LayoutBoxModelObject* paintInvalidationContainer = nullptr;
51 53
52 // The current paint invalidation container for stacked contents (stacking c ontexts or positioned objects). 54 // The current paint invalidation container for stacked contents (stacking c ontexts or positioned objects).
(...skipping 26 matching lines...) Expand all
79 void updatePaintingLayer(const LayoutObject&, PaintInvalidatorContext&); 81 void updatePaintingLayer(const LayoutObject&, PaintInvalidatorContext&);
80 void updateContext(const LayoutObject&, PaintInvalidatorContext&); 82 void updateContext(const LayoutObject&, PaintInvalidatorContext&);
81 83
82 Vector<const LayoutObject*> m_pendingDelayedPaintInvalidations; 84 Vector<const LayoutObject*> m_pendingDelayedPaintInvalidations;
83 GeometryMapper m_geometryMapper; 85 GeometryMapper m_geometryMapper;
84 }; 86 };
85 87
86 } // namespace blink 88 } // namespace blink
87 89
88 #endif // PaintInvalidator_h 90 #endif // PaintInvalidator_h
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698