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

Side by Side Diff: third_party/WebKit/Source/core/layout/PaintInvalidationState.h

Issue 2732573003: Skip paint property update and visual rect update if no geometry change (Closed)
Patch Set: - Created 3 years, 8 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 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 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 PaintInvalidationState_h 5 #ifndef PaintInvalidationState_h
6 #define PaintInvalidationState_h 6 #define PaintInvalidationState_h
7 7
8 #include "core/CoreExport.h" 8 #include "core/CoreExport.h"
9 #include "core/paint/PaintInvalidator.h" 9 #include "core/paint/PaintInvalidator.h"
10 #include "platform/geometry/LayoutRect.h" 10 #include "platform/geometry/LayoutRect.h"
(...skipping 58 matching lines...) Expand 10 before | Expand all | Expand 10 after
69 PaintInvalidatorContext::ForcedSubtreeInvalidationChecking; 69 PaintInvalidatorContext::ForcedSubtreeInvalidationChecking;
70 } 70 }
71 71
72 bool forcedSubtreeFullInvalidationWithinContainer() const { 72 bool forcedSubtreeFullInvalidationWithinContainer() const {
73 return m_forcedSubtreeInvalidationFlags & 73 return m_forcedSubtreeInvalidationFlags &
74 PaintInvalidatorContext::ForcedSubtreeFullInvalidation; 74 PaintInvalidatorContext::ForcedSubtreeFullInvalidation;
75 } 75 }
76 76
77 bool forcedSubtreeInvalidationRectUpdateWithinContainerOnly() const { 77 bool forcedSubtreeInvalidationRectUpdateWithinContainerOnly() const {
78 return m_forcedSubtreeInvalidationFlags == 78 return m_forcedSubtreeInvalidationFlags ==
79 PaintInvalidatorContext::ForcedSubtreeInvalidationRectUpdate; 79 PaintInvalidatorContext::ForcedSubtreeVisualRectUpdate;
80 } 80 }
81 void setForceSubtreeInvalidationRectUpdateWithinContainer() { 81 void setForceSubtreeInvalidationRectUpdateWithinContainer() {
82 m_forcedSubtreeInvalidationFlags |= 82 m_forcedSubtreeInvalidationFlags |=
83 PaintInvalidatorContext::ForcedSubtreeInvalidationRectUpdate; 83 PaintInvalidatorContext::ForcedSubtreeVisualRectUpdate;
84 } 84 }
85 85
86 const LayoutBoxModelObject& paintInvalidationContainer() const { 86 const LayoutBoxModelObject& paintInvalidationContainer() const {
87 return *m_paintInvalidationContainer; 87 return *m_paintInvalidationContainer;
88 } 88 }
89 89
90 // Computes the location of the current object ((0,0) in the space of the 90 // Computes the location of the current object ((0,0) in the space of the
91 // object) in the space of paint invalidation backing. 91 // object) in the space of paint invalidation backing.
92 LayoutPoint computeLocationInBacking( 92 LayoutPoint computeLocationInBacking(
93 const LayoutPoint& visualRectLocation) const; 93 const LayoutPoint& visualRectLocation) const;
(...skipping 98 matching lines...) Expand 10 before | Expand all | Expand 10 after
192 void mapLocalRectToVisualRectInBacking(const LayoutObject&, 192 void mapLocalRectToVisualRectInBacking(const LayoutObject&,
193 LayoutRect&) const override; 193 LayoutRect&) const override;
194 194
195 private: 195 private:
196 const PaintInvalidationState& m_paintInvalidationState; 196 const PaintInvalidationState& m_paintInvalidationState;
197 }; 197 };
198 198
199 } // namespace blink 199 } // namespace blink
200 200
201 #endif // PaintInvalidationState_h 201 #endif // PaintInvalidationState_h
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698