OLD | NEW |
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 "core/layout/LayoutObject.h" | 8 #include "core/layout/LayoutObject.h" |
9 #include "core/paint/PaintPropertyTreeBuilder.h" | 9 #include "core/paint/PaintPropertyTreeBuilder.h" |
10 #include "platform/geometry/LayoutRect.h" | 10 #include "platform/geometry/LayoutRect.h" |
(...skipping 98 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
109 const PaintPropertyTreeBuilderContext* tree_builder_context_; | 109 const PaintPropertyTreeBuilderContext* tree_builder_context_; |
110 | 110 |
111 #if DCHECK_IS_ON() | 111 #if DCHECK_IS_ON() |
112 friend class FindVisualRectNeedingUpdateScopeBase; | 112 friend class FindVisualRectNeedingUpdateScopeBase; |
113 mutable bool force_visual_rect_update_for_checking_ = false; | 113 mutable bool force_visual_rect_update_for_checking_ = false; |
114 #endif | 114 #endif |
115 }; | 115 }; |
116 | 116 |
117 class PaintInvalidator { | 117 class PaintInvalidator { |
118 public: | 118 public: |
119 void InvalidatePaintIfNeeded(FrameView&, PaintInvalidatorContext&); | 119 void InvalidatePaint(FrameView&, PaintInvalidatorContext&); |
120 void InvalidatePaintIfNeeded(const LayoutObject&, PaintInvalidatorContext&); | 120 void InvalidatePaint(const LayoutObject&, PaintInvalidatorContext&); |
121 | 121 |
122 // Process objects needing paint invalidation on the next frame. | 122 // Process objects needing paint invalidation on the next frame. |
123 // See the definition of PaintInvalidationDelayedFull for more details. | 123 // See the definition of PaintInvalidationDelayedFull for more details. |
124 void ProcessPendingDelayedPaintInvalidations(); | 124 void ProcessPendingDelayedPaintInvalidations(); |
125 | 125 |
126 private: | 126 private: |
127 friend struct PaintInvalidatorContext; | 127 friend struct PaintInvalidatorContext; |
128 template <typename Rect, typename Point> | 128 template <typename Rect, typename Point> |
129 static LayoutRect MapLocalRectToVisualRectInBacking( | 129 static LayoutRect MapLocalRectToVisualRectInBacking( |
130 const LayoutObject&, | 130 const LayoutObject&, |
(...skipping 13 matching lines...) Expand all Loading... |
144 PaintInvalidatorContext&); | 144 PaintInvalidatorContext&); |
145 ALWAYS_INLINE void UpdateVisualRect(const LayoutObject&, | 145 ALWAYS_INLINE void UpdateVisualRect(const LayoutObject&, |
146 PaintInvalidatorContext&); | 146 PaintInvalidatorContext&); |
147 | 147 |
148 Vector<const LayoutObject*> pending_delayed_paint_invalidations_; | 148 Vector<const LayoutObject*> pending_delayed_paint_invalidations_; |
149 }; | 149 }; |
150 | 150 |
151 } // namespace blink | 151 } // namespace blink |
152 | 152 |
153 #endif // PaintInvalidator_h | 153 #endif // PaintInvalidator_h |
OLD | NEW |