diff options
author | schenney <schenney@chromium.org> | 2015-02-19 08:48:25 -0800 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2015-02-19 16:49:13 +0000 |
commit | ba47b3ebc5d0b50ac44673774a66fe82f0dc8a21 (patch) | |
tree | 45166346f0ec0aa484c08a1dbecf005fbb558959 /cc/blink | |
parent | 6e4300d896a8d4103fdb43276521feaf0a6dcd28 (diff) | |
download | chromium_src-ba47b3ebc5d0b50ac44673774a66fe82f0dc8a21.zip chromium_src-ba47b3ebc5d0b50ac44673774a66fe82f0dc8a21.tar.gz chromium_src-ba47b3ebc5d0b50ac44673774a66fe82f0dc8a21.tar.bz2 |
Resolve FIXMEs in cc for Display Item Lists.
This is the final patch for removing location and making
SkPicture const in drawing display items, and the first patch
in adding scroll display item support in cc.
R=ajuma@chromium.org
BUG=458240
Review URL: https://codereview.chromium.org/939463003
Cr-Commit-Position: refs/heads/master@{#317060}
Diffstat (limited to 'cc/blink')
-rw-r--r-- | cc/blink/web_display_item_list_impl.cc | 21 | ||||
-rw-r--r-- | cc/blink/web_display_item_list_impl.h | 5 |
2 files changed, 16 insertions, 10 deletions
diff --git a/cc/blink/web_display_item_list_impl.cc b/cc/blink/web_display_item_list_impl.cc index 1b6f91a..4941afe 100644 --- a/cc/blink/web_display_item_list_impl.cc +++ b/cc/blink/web_display_item_list_impl.cc @@ -35,14 +35,7 @@ scoped_refptr<cc::DisplayItemList> WebDisplayItemListImpl::ToDisplayItemList() { void WebDisplayItemListImpl::appendDrawingItem(const SkPicture* picture) { display_item_list_->AppendItem(cc::DrawingDisplayItem::Create( - skia::SharePtr(const_cast<SkPicture*>(picture)), gfx::PointF(0, 0))); -} - -void WebDisplayItemListImpl::appendDrawingItem( - SkPicture* picture, - const blink::WebFloatPoint& location) { - display_item_list_->AppendItem( - cc::DrawingDisplayItem::Create(skia::SharePtr(picture), location)); + skia::SharePtr(const_cast<SkPicture*>(picture)))); } void WebDisplayItemListImpl::appendClipItem( @@ -114,6 +107,18 @@ void WebDisplayItemListImpl::appendEndFilterItem() { display_item_list_->AppendItem(cc::EndFilterDisplayItem::Create()); } +void WebDisplayItemListImpl::appendScrollItem( + const blink::WebSize& scrollOffset, + ScrollContainerId) { + SkMatrix44 matrix; + matrix.setTranslate(-scrollOffset.width, -scrollOffset.height, 0); + appendTransformItem(matrix); +} + +void WebDisplayItemListImpl::appendEndScrollItem() { + appendEndTransformItem(); +} + WebDisplayItemListImpl::~WebDisplayItemListImpl() { } diff --git a/cc/blink/web_display_item_list_impl.h b/cc/blink/web_display_item_list_impl.h index 1295a13..8ec7a152 100644 --- a/cc/blink/web_display_item_list_impl.h +++ b/cc/blink/web_display_item_list_impl.h @@ -33,8 +33,6 @@ class WebDisplayItemListImpl : public blink::WebDisplayItemList { // blink::WebDisplayItemList implementation. virtual void appendDrawingItem(const SkPicture*); - virtual void appendDrawingItem(SkPicture*, - const blink::WebFloatPoint& location); virtual void appendClipItem( const blink::WebRect& clip_rect, const blink::WebVector<SkRRect>& rounded_clip_rects); @@ -53,6 +51,9 @@ class WebDisplayItemListImpl : public blink::WebDisplayItemList { virtual void appendFilterItem(const blink::WebFilterOperations& filters, const blink::WebFloatRect& bounds); virtual void appendEndFilterItem(); + virtual void appendScrollItem(const blink::WebSize& scrollOffset, + ScrollContainerId); + virtual void appendEndScrollItem(); private: scoped_refptr<cc::DisplayItemList> display_item_list_; |