| Index: cc/blink/web_display_item_list_impl.cc
|
| diff --git a/cc/blink/web_display_item_list_impl.cc b/cc/blink/web_display_item_list_impl.cc
|
| index 2bad804cb54a89469e2e0d9cdee2573fa96c2725..7bd983c94904c2fc6b37a19009c0244fc976110c 100644
|
| --- a/cc/blink/web_display_item_list_impl.cc
|
| +++ b/cc/blink/web_display_item_list_impl.cc
|
| @@ -31,8 +31,9 @@ WebDisplayItemListImpl::WebDisplayItemListImpl(
|
| }
|
|
|
| void WebDisplayItemListImpl::appendDrawingItem(const SkPicture* picture) {
|
| - display_item_list_->AppendItem(cc::DrawingDisplayItem::Create(
|
| - skia::SharePtr(const_cast<SkPicture*>(picture))));
|
| + auto* item =
|
| + display_item_list_->CreateAndAppendItem<cc::DrawingDisplayItem>();
|
| + item->SetNew(skia::SharePtr(const_cast<SkPicture*>(picture)));
|
| }
|
|
|
| void WebDisplayItemListImpl::appendClipItem(
|
| @@ -42,42 +43,47 @@ void WebDisplayItemListImpl::appendClipItem(
|
| for (size_t i = 0; i < rounded_clip_rects.size(); ++i) {
|
| rounded_rects.push_back(rounded_clip_rects[i]);
|
| }
|
| - display_item_list_->AppendItem(
|
| - cc::ClipDisplayItem::Create(clip_rect, rounded_rects));
|
| + auto* item = display_item_list_->CreateAndAppendItem<cc::ClipDisplayItem>();
|
| + item->SetNew(clip_rect, rounded_rects);
|
| }
|
|
|
| void WebDisplayItemListImpl::appendEndClipItem() {
|
| - display_item_list_->AppendItem(cc::EndClipDisplayItem::Create());
|
| + display_item_list_->CreateAndAppendItem<cc::EndClipDisplayItem>();
|
| }
|
|
|
| void WebDisplayItemListImpl::appendClipPathItem(const SkPath& clip_path,
|
| SkRegion::Op clip_op,
|
| bool antialias) {
|
| - display_item_list_->AppendItem(
|
| - cc::ClipPathDisplayItem::Create(clip_path, clip_op, antialias));
|
| + auto* item =
|
| + display_item_list_->CreateAndAppendItem<cc::ClipPathDisplayItem>();
|
| + item->SetNew(clip_path, clip_op, antialias);
|
| }
|
|
|
| void WebDisplayItemListImpl::appendEndClipPathItem() {
|
| - display_item_list_->AppendItem(cc::EndClipPathDisplayItem::Create());
|
| + display_item_list_->CreateAndAppendItem<cc::EndClipPathDisplayItem>();
|
| }
|
|
|
| void WebDisplayItemListImpl::appendFloatClipItem(
|
| const blink::WebFloatRect& clip_rect) {
|
| - display_item_list_->AppendItem(cc::FloatClipDisplayItem::Create(clip_rect));
|
| + auto* item =
|
| + display_item_list_->CreateAndAppendItem<cc::FloatClipDisplayItem>();
|
| + item->SetNew(clip_rect);
|
| }
|
|
|
| void WebDisplayItemListImpl::appendEndFloatClipItem() {
|
| - display_item_list_->AppendItem(cc::EndFloatClipDisplayItem::Create());
|
| + display_item_list_->CreateAndAppendItem<cc::EndFloatClipDisplayItem>();
|
| }
|
|
|
| void WebDisplayItemListImpl::appendTransformItem(const SkMatrix44& matrix) {
|
| gfx::Transform transform;
|
| transform.matrix() = matrix;
|
| - display_item_list_->AppendItem(cc::TransformDisplayItem::Create(transform));
|
| + auto* item =
|
| + display_item_list_->CreateAndAppendItem<cc::TransformDisplayItem>();
|
| + item->SetNew(transform);
|
| }
|
|
|
| void WebDisplayItemListImpl::appendEndTransformItem() {
|
| - display_item_list_->AppendItem(cc::EndTransformDisplayItem::Create());
|
| + display_item_list_->CreateAndAppendItem<cc::EndTransformDisplayItem>();
|
| }
|
|
|
| void WebDisplayItemListImpl::appendCompositingItem(
|
| @@ -89,13 +95,14 @@ void WebDisplayItemListImpl::appendCompositingItem(
|
| DCHECK_LE(opacity, 1.f);
|
| // TODO(ajuma): This should really be rounding instead of flooring the alpha
|
| // value, but that breaks slimming paint reftests.
|
| - display_item_list_->AppendItem(cc::CompositingDisplayItem::Create(
|
| - static_cast<uint8_t>(gfx::ToFlooredInt(255 * opacity)), xfermode, bounds,
|
| - skia::SharePtr(color_filter)));
|
| + auto* item =
|
| + display_item_list_->CreateAndAppendItem<cc::CompositingDisplayItem>();
|
| + item->SetNew(static_cast<uint8_t>(gfx::ToFlooredInt(255 * opacity)), xfermode,
|
| + bounds, skia::SharePtr(color_filter));
|
| }
|
|
|
| void WebDisplayItemListImpl::appendEndCompositingItem() {
|
| - display_item_list_->AppendItem(cc::EndCompositingDisplayItem::Create());
|
| + display_item_list_->CreateAndAppendItem<cc::EndCompositingDisplayItem>();
|
| }
|
|
|
| void WebDisplayItemListImpl::appendFilterItem(
|
| @@ -103,12 +110,12 @@ void WebDisplayItemListImpl::appendFilterItem(
|
| const blink::WebFloatRect& bounds) {
|
| const WebFilterOperationsImpl& filters_impl =
|
| static_cast<const WebFilterOperationsImpl&>(filters);
|
| - display_item_list_->AppendItem(
|
| - cc::FilterDisplayItem::Create(filters_impl.AsFilterOperations(), bounds));
|
| + auto* item = display_item_list_->CreateAndAppendItem<cc::FilterDisplayItem>();
|
| + item->SetNew(filters_impl.AsFilterOperations(), bounds);
|
| }
|
|
|
| void WebDisplayItemListImpl::appendEndFilterItem() {
|
| - display_item_list_->AppendItem(cc::EndFilterDisplayItem::Create());
|
| + display_item_list_->CreateAndAppendItem<cc::EndFilterDisplayItem>();
|
| }
|
|
|
| void WebDisplayItemListImpl::appendScrollItem(
|
|
|