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

Side by Side Diff: third_party/WebKit/Source/platform/graphics/paint/DisplayItemClient.h

Issue 2894093002: Don't access DisplayItemClient::VisualRect() for cached display items. (Closed)
Patch Set: - Created 3 years, 7 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 2015 The Chromium Authors. All rights reserved. 1 // Copyright 2015 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 DisplayItemClient_h 5 #ifndef DisplayItemClient_h
6 #define DisplayItemClient_h 6 #define DisplayItemClient_h
7 7
8 #include "platform/PlatformExport.h" 8 #include "platform/PlatformExport.h"
9 #include "platform/geometry/LayoutRect.h" 9 #include "platform/geometry/LayoutRect.h"
10 #include "platform/graphics/PaintInvalidationReason.h" 10 #include "platform/graphics/PaintInvalidationReason.h"
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after
46 static void EndShouldKeepAliveAllClients(); 46 static void EndShouldKeepAliveAllClients();
47 #else 47 #else
48 DisplayItemClient() {} 48 DisplayItemClient() {}
49 virtual ~DisplayItemClient() {} 49 virtual ~DisplayItemClient() {}
50 #endif 50 #endif
51 51
52 virtual String DebugName() const = 0; 52 virtual String DebugName() const = 0;
53 53
54 // The visual rect of this DisplayItemClient, in the object space of the 54 // The visual rect of this DisplayItemClient, in the object space of the
55 // object that owns the GraphicsLayer, i.e. offset by 55 // object that owns the GraphicsLayer, i.e. offset by
56 // offsetFromLayoutObjectWithSubpixelAccumulation(). 56 // GraphicsLayer::OffsetFromLayoutObjectWithSubpixelAccumulation().
57 virtual LayoutRect VisualRect() const = 0; 57 virtual LayoutRect VisualRect() const = 0;
58 58
59 // This is declared here instead of in LayoutObject for verifying the 59 // This is declared here instead of in LayoutObject for verifying the
60 // condition in DrawingRecorder. 60 // condition in DrawingRecorder.
61 // Returns true if the object itself will not generate any effective painted 61 // Returns true if the object itself will not generate any effective painted
62 // output no matter what size the object is. For example, this function can 62 // output no matter what size the object is. For example, this function can
63 // return false for an object whose size is currently 0x0 but would have 63 // return false for an object whose size is currently 0x0 but would have
64 // effective painted output if it was set a non-empty size. It's used to skip 64 // effective painted output if it was set a non-empty size. It's used to skip
65 // unforced paint invalidation of LayoutObjects (which is when 65 // unforced paint invalidation of LayoutObjects (which is when
66 // shouldDoFullPaintInvalidation is false, but mayNeedPaintInvalidation or 66 // shouldDoFullPaintInvalidation is false, but mayNeedPaintInvalidation or
(...skipping 116 matching lines...) Expand 10 before | Expand all | Expand 10 after
183 return &client1 == &client2; 183 return &client1 == &client2;
184 } 184 }
185 inline bool operator!=(const DisplayItemClient& client1, 185 inline bool operator!=(const DisplayItemClient& client1,
186 const DisplayItemClient& client2) { 186 const DisplayItemClient& client2) {
187 return &client1 != &client2; 187 return &client1 != &client2;
188 } 188 }
189 189
190 } // namespace blink 190 } // namespace blink
191 191
192 #endif // DisplayItemClient_h 192 #endif // DisplayItemClient_h
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698