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

Side by Side Diff: third_party/WebKit/Source/platform/graphics/paint/CompositingDisplayItem.cpp

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 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 #include "platform/graphics/paint/CompositingDisplayItem.h" 5 #include "platform/graphics/paint/CompositingDisplayItem.h"
6 6
7 #include "platform/RuntimeEnabledFeatures.h" 7 #include "platform/RuntimeEnabledFeatures.h"
8 #include "platform/graphics/GraphicsContext.h" 8 #include "platform/graphics/GraphicsContext.h"
9 #include "platform/graphics/skia/SkiaUtils.h" 9 #include "platform/graphics/skia/SkiaUtils.h"
10 #include "public/platform/WebDisplayItemList.h" 10 #include "public/platform/WebDisplayItemList.h"
11 11
12 namespace blink { 12 namespace blink {
13 13
14 void BeginCompositingDisplayItem::Replay(GraphicsContext& context) const { 14 void BeginCompositingDisplayItem::Replay(GraphicsContext& context) const {
15 context.BeginLayer(opacity_, xfer_mode_, has_bounds_ ? &bounds_ : nullptr, 15 context.BeginLayer(opacity_, xfer_mode_, has_bounds_ ? &bounds_ : nullptr,
16 color_filter_); 16 color_filter_);
17 } 17 }
18 18
19 void BeginCompositingDisplayItem::AppendToWebDisplayItemList( 19 void BeginCompositingDisplayItem::AppendToWebDisplayItemList(
20 const IntRect& visual_rect, 20 const LayoutSize&,
21 WebDisplayItemList* list) const { 21 WebDisplayItemList* list) const {
22 SkRect bounds = bounds_; 22 SkRect bounds = bounds_;
23 list->AppendCompositingItem( 23 list->AppendCompositingItem(
24 opacity_, xfer_mode_, has_bounds_ ? &bounds : nullptr, 24 opacity_, xfer_mode_, has_bounds_ ? &bounds : nullptr,
25 GraphicsContext::WebCoreColorFilterToSkiaColorFilter(color_filter_) 25 GraphicsContext::WebCoreColorFilterToSkiaColorFilter(color_filter_)
26 .get()); 26 .get());
27 } 27 }
28 28
29 #ifndef NDEBUG 29 #ifndef NDEBUG
30 void BeginCompositingDisplayItem::DumpPropertiesAsDebugString( 30 void BeginCompositingDisplayItem::DumpPropertiesAsDebugString(
31 WTF::StringBuilder& string_builder) const { 31 WTF::StringBuilder& string_builder) const {
32 DisplayItem::DumpPropertiesAsDebugString(string_builder); 32 DisplayItem::DumpPropertiesAsDebugString(string_builder);
33 string_builder.Append(WTF::String::Format( 33 string_builder.Append(WTF::String::Format(
34 ", xferMode: %d, opacity: %f", static_cast<int>(xfer_mode_), opacity_)); 34 ", xferMode: %d, opacity: %f", static_cast<int>(xfer_mode_), opacity_));
35 if (has_bounds_) { 35 if (has_bounds_) {
36 string_builder.Append( 36 string_builder.Append(
37 WTF::String::Format(", bounds: [%f, %f, %f, %f]", 37 WTF::String::Format(", bounds: [%f, %f, %f, %f]",
38 bounds_.Location().X(), bounds_.Location().Y(), 38 bounds_.Location().X(), bounds_.Location().Y(),
39 bounds_.Size().Width(), bounds_.Size().Height())); 39 bounds_.Size().Width(), bounds_.Size().Height()));
40 } 40 }
41 } 41 }
42 #endif 42 #endif
43 43
44 void EndCompositingDisplayItem::Replay(GraphicsContext& context) const { 44 void EndCompositingDisplayItem::Replay(GraphicsContext& context) const {
45 context.EndLayer(); 45 context.EndLayer();
46 } 46 }
47 47
48 void EndCompositingDisplayItem::AppendToWebDisplayItemList( 48 void EndCompositingDisplayItem::AppendToWebDisplayItemList(
49 const IntRect& visual_rect, 49 const LayoutSize&,
50 WebDisplayItemList* list) const { 50 WebDisplayItemList* list) const {
51 list->AppendEndCompositingItem(); 51 list->AppendEndCompositingItem();
52 } 52 }
53 53
54 } // namespace blink 54 } // namespace blink
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698