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

Side by Side Diff: cc/playback/compositing_display_item.cc

Issue 2075873002: Support general raster matrix for RasterSource and DisplayItemList (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: fix a bug in PrepareForPlaybackToCanvas and fix cc_unittests Created 4 years, 6 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 #include "cc/playback/compositing_display_item.h" 5 #include "cc/playback/compositing_display_item.h"
6 6
7 #include <stddef.h> 7 #include <stddef.h>
8 #include <stdint.h> 8 #include <stdint.h>
9 9
10 #include "base/strings/stringprintf.h" 10 #include "base/strings/stringprintf.h"
(...skipping 82 matching lines...) Expand 10 before | Expand all | Expand 10 after
93 sk_sp<SkData> data(SkValidatingSerializeFlattenable(color_filter_.get())); 93 sk_sp<SkData> data(SkValidatingSerializeFlattenable(color_filter_.get()));
94 if (data->size() > 0) 94 if (data->size() > 0)
95 details->set_color_filter(data->data(), data->size()); 95 details->set_color_filter(data->data(), data->size());
96 } 96 }
97 97
98 details->set_lcd_text_requires_opaque_layer(lcd_text_requires_opaque_layer_); 98 details->set_lcd_text_requires_opaque_layer(lcd_text_requires_opaque_layer_);
99 } 99 }
100 100
101 void CompositingDisplayItem::Raster( 101 void CompositingDisplayItem::Raster(
102 SkCanvas* canvas, 102 SkCanvas* canvas,
103 const gfx::Rect& canvas_target_playback_rect,
104 SkPicture::AbortCallback* callback) const { 103 SkPicture::AbortCallback* callback) const {
105 SkPaint paint; 104 SkPaint paint;
106 paint.setXfermodeMode(xfermode_); 105 paint.setXfermodeMode(xfermode_);
107 paint.setAlpha(alpha_); 106 paint.setAlpha(alpha_);
108 paint.setColorFilter(color_filter_); 107 paint.setColorFilter(color_filter_);
109 const SkRect* bounds = has_bounds_ ? &bounds_ : nullptr; 108 const SkRect* bounds = has_bounds_ ? &bounds_ : nullptr;
110 if (lcd_text_requires_opaque_layer_) 109 if (lcd_text_requires_opaque_layer_)
111 canvas->saveLayer(bounds, &paint); 110 canvas->saveLayer(bounds, &paint);
112 else 111 else
113 canvas->saveLayerPreserveLCDTextRequests(bounds, &paint); 112 canvas->saveLayerPreserveLCDTextRequests(bounds, &paint);
(...skipping 30 matching lines...) Expand all
144 } 143 }
145 144
146 void EndCompositingDisplayItem::ToProtobuf( 145 void EndCompositingDisplayItem::ToProtobuf(
147 proto::DisplayItem* proto, 146 proto::DisplayItem* proto,
148 ImageSerializationProcessor* image_serialization_processor) const { 147 ImageSerializationProcessor* image_serialization_processor) const {
149 proto->set_type(proto::DisplayItem::Type_EndCompositing); 148 proto->set_type(proto::DisplayItem::Type_EndCompositing);
150 } 149 }
151 150
152 void EndCompositingDisplayItem::Raster( 151 void EndCompositingDisplayItem::Raster(
153 SkCanvas* canvas, 152 SkCanvas* canvas,
154 const gfx::Rect& canvas_target_playback_rect,
155 SkPicture::AbortCallback* callback) const { 153 SkPicture::AbortCallback* callback) const {
156 canvas->restore(); 154 canvas->restore();
157 } 155 }
158 156
159 void EndCompositingDisplayItem::AsValueInto( 157 void EndCompositingDisplayItem::AsValueInto(
160 const gfx::Rect& visual_rect, 158 const gfx::Rect& visual_rect,
161 base::trace_event::TracedValue* array) const { 159 base::trace_event::TracedValue* array) const {
162 array->AppendString( 160 array->AppendString(
163 base::StringPrintf("EndCompositingDisplayItem visualRect: [%s]", 161 base::StringPrintf("EndCompositingDisplayItem visualRect: [%s]",
164 visual_rect.ToString().c_str())); 162 visual_rect.ToString().c_str()));
165 } 163 }
166 164
167 size_t EndCompositingDisplayItem::ExternalMemoryUsage() const { 165 size_t EndCompositingDisplayItem::ExternalMemoryUsage() const {
168 return 0; 166 return 0;
169 } 167 }
170 168
171 } // namespace cc 169 } // namespace cc
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698