summaryrefslogtreecommitdiffstats
path: root/cc/resources
diff options
context:
space:
mode:
authorrobertphillips@google.com <robertphillips@google.com@0039d316-1c4b-4281-b951-d872f2087c98>2014-04-24 01:02:25 +0000
committerrobertphillips@google.com <robertphillips@google.com@0039d316-1c4b-4281-b951-d872f2087c98>2014-04-24 01:02:25 +0000
commitde14c2cabf18b1ffa957ef054f63b25a188cafb4 (patch)
tree474c793e445ef4206d40aa169b122090e44f2201 /cc/resources
parent40815c8f23b107d2033ab13c0f9fbe326efd6e20 (diff)
downloadchromium_src-de14c2cabf18b1ffa957ef054f63b25a188cafb4.zip
chromium_src-de14c2cabf18b1ffa957ef054f63b25a188cafb4.tar.gz
chromium_src-de14c2cabf18b1ffa957ef054f63b25a188cafb4.tar.bz2
Update Chromium to new Skia headers & beginRecording signature
As of Skia r14295 the SkPictureRecorder class resides in its own header (SkPictureRecorder.h) and beginRecording takes an additional (factory) parameter. Temporarily the new signature doesn't allow default parameters so as to avoid compiler confusion with the deprecated signature. The SkTileGridPicture has been replaced by the SkTileGridFactory which is now passed into beginRecording. Note: this cannot be landed until Skia r14295 is rolled into Chromium (presumably this morning). enne : cc fmalita: skia Review URL: https://codereview.chromium.org/246753009 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@265803 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'cc/resources')
-rw-r--r--cc/resources/picture.cc13
-rw-r--r--cc/resources/picture.h9
-rw-r--r--cc/resources/picture_pile_base.cc2
-rw-r--r--cc/resources/picture_pile_base.h4
-rw-r--r--cc/resources/picture_pile_impl.cc2
-rw-r--r--cc/resources/picture_unittest.cc14
-rw-r--r--cc/resources/skpicture_content_layer_updater.cc5
7 files changed, 27 insertions, 22 deletions
diff --git a/cc/resources/picture.cc b/cc/resources/picture.cc
index 8c2ba8a..48f03e0 100644
--- a/cc/resources/picture.cc
+++ b/cc/resources/picture.cc
@@ -21,6 +21,7 @@
#include "third_party/skia/include/core/SkData.h"
#include "third_party/skia/include/core/SkDrawFilter.h"
#include "third_party/skia/include/core/SkPaint.h"
+#include "third_party/skia/include/core/SkPictureRecorder.h"
#include "third_party/skia/include/core/SkStream.h"
#include "third_party/skia/include/utils/SkNullCanvas.h"
#include "third_party/skia/include/utils/SkPictureUtils.h"
@@ -85,7 +86,7 @@ bool DecodeBitmap(const void* buffer, size_t size, SkBitmap* bm) {
scoped_refptr<Picture> Picture::Create(
const gfx::Rect& layer_rect,
ContentLayerClient* client,
- const SkTileGridPicture::TileGridInfo& tile_grid_info,
+ const SkTileGridFactory::TileGridInfo& tile_grid_info,
bool gather_pixel_refs,
int num_raster_threads,
RecordingMode recording_mode) {
@@ -238,7 +239,7 @@ void Picture::CloneForDrawing(int num_threads) {
}
void Picture::Record(ContentLayerClient* painter,
- const SkTileGridPicture::TileGridInfo& tile_grid_info,
+ const SkTileGridFactory::TileGridInfo& tile_grid_info,
RecordingMode recording_mode) {
TRACE_EVENT2("cc",
"Picture::Record",
@@ -250,14 +251,14 @@ void Picture::Record(ContentLayerClient* painter,
DCHECK(!picture_);
DCHECK(!tile_grid_info.fTileInterval.isEmpty());
- skia::RefPtr<SkPictureFactory> factory =
- skia::AdoptRef(new SkTileGridPictureFactory(tile_grid_info));
- SkPictureRecorder recorder(factory.get());
+ SkTileGridFactory factory(tile_grid_info);
+ SkPictureRecorder recorder;
skia::RefPtr<SkCanvas> canvas;
canvas = skia::SharePtr(
recorder.beginRecording(layer_rect_.width(),
layer_rect_.height(),
+ &factory,
SkPicture::kUsePathBoundsForClip_RecordingFlag));
switch (recording_mode) {
@@ -302,7 +303,7 @@ void Picture::Record(ContentLayerClient* painter,
}
void Picture::GatherPixelRefs(
- const SkTileGridPicture::TileGridInfo& tile_grid_info) {
+ const SkTileGridFactory::TileGridInfo& tile_grid_info) {
TRACE_EVENT2("cc", "Picture::GatherPixelRefs",
"width", layer_rect_.width(),
"height", layer_rect_.height());
diff --git a/cc/resources/picture.h b/cc/resources/picture.h
index d32b843..26d106b 100644
--- a/cc/resources/picture.h
+++ b/cc/resources/picture.h
@@ -20,7 +20,8 @@
#include "cc/base/cc_export.h"
#include "cc/base/region.h"
#include "skia/ext/refptr.h"
-#include "third_party/skia/include/core/SkTileGridPicture.h"
+#include "third_party/skia/include/core/SkBBHFactory.h"
+#include "third_party/skia/include/core/SkPicture.h"
#include "ui/gfx/rect.h"
class SkPixelRef;
@@ -54,7 +55,7 @@ class CC_EXPORT Picture
static scoped_refptr<Picture> Create(
const gfx::Rect& layer_rect,
ContentLayerClient* client,
- const SkTileGridPicture::TileGridInfo& tile_grid_info,
+ const SkTileGridFactory::TileGridInfo& tile_grid_info,
bool gather_pixels_refs,
int num_raster_threads,
RecordingMode recording_mode);
@@ -146,11 +147,11 @@ class CC_EXPORT Picture
// Record a paint operation. To be able to safely use this SkPicture for
// playback on a different thread this can only be called once.
void Record(ContentLayerClient* client,
- const SkTileGridPicture::TileGridInfo& tile_grid_info,
+ const SkTileGridFactory::TileGridInfo& tile_grid_info,
RecordingMode recording_mode);
// Gather pixel refs from recording.
- void GatherPixelRefs(const SkTileGridPicture::TileGridInfo& tile_grid_info);
+ void GatherPixelRefs(const SkTileGridFactory::TileGridInfo& tile_grid_info);
gfx::Rect layer_rect_;
gfx::Rect opaque_rect_;
diff --git a/cc/resources/picture_pile_base.cc b/cc/resources/picture_pile_base.cc
index aa00876f7..8f8bf53 100644
--- a/cc/resources/picture_pile_base.cc
+++ b/cc/resources/picture_pile_base.cc
@@ -154,7 +154,7 @@ void PicturePileBase::SetMinContentsScale(float min_contents_scale) {
// static
void PicturePileBase::ComputeTileGridInfo(
const gfx::Size& tile_grid_size,
- SkTileGridPicture::TileGridInfo* info) {
+ SkTileGridFactory::TileGridInfo* info) {
DCHECK(info);
info->fTileInterval.set(tile_grid_size.width() - 2 * kTileGridBorderPixels,
tile_grid_size.height() - 2 * kTileGridBorderPixels);
diff --git a/cc/resources/picture_pile_base.h b/cc/resources/picture_pile_base.h
index eff7887..dd5f883 100644
--- a/cc/resources/picture_pile_base.h
+++ b/cc/resources/picture_pile_base.h
@@ -43,7 +43,7 @@ class CC_EXPORT PicturePileBase : public base::RefCounted<PicturePileBase> {
bool HasRecordings() const { return has_any_recordings_; }
static void ComputeTileGridInfo(const gfx::Size& tile_grid_size,
- SkTileGridPicture::TileGridInfo* info);
+ SkTileGridFactory::TileGridInfo* info);
void SetTileGridSize(const gfx::Size& tile_grid_size);
TilingData& tiling() { return tiling_; }
@@ -101,7 +101,7 @@ class CC_EXPORT PicturePileBase : public base::RefCounted<PicturePileBase> {
// If non-empty, all pictures tiles inside this rect are recorded.
gfx::Rect recorded_viewport_;
float min_contents_scale_;
- SkTileGridPicture::TileGridInfo tile_grid_info_;
+ SkTileGridFactory::TileGridInfo tile_grid_info_;
SkColor background_color_;
int slow_down_raster_scale_factor_for_debug_;
bool contents_opaque_;
diff --git a/cc/resources/picture_pile_impl.cc b/cc/resources/picture_pile_impl.cc
index 947dea8..d0f6cf9 100644
--- a/cc/resources/picture_pile_impl.cc
+++ b/cc/resources/picture_pile_impl.cc
@@ -12,6 +12,7 @@
#include "cc/resources/raster_worker_pool.h"
#include "skia/ext/analysis_canvas.h"
#include "third_party/skia/include/core/SkCanvas.h"
+#include "third_party/skia/include/core/SkPictureRecorder.h"
#include "third_party/skia/include/core/SkSize.h"
#include "ui/gfx/rect_conversions.h"
#include "ui/gfx/size_conversions.h"
@@ -348,6 +349,7 @@ skia::RefPtr<SkPicture> PicturePileImpl::GetFlattenedPicture() {
SkCanvas* canvas =
recorder.beginRecording(tiling_rect.width(),
tiling_rect.height(),
+ NULL,
SkPicture::kUsePathBoundsForClip_RecordingFlag);
if (!tiling_rect.IsEmpty())
RasterToBitmap(canvas, tiling_rect, 1.0, NULL);
diff --git a/cc/resources/picture_unittest.cc b/cc/resources/picture_unittest.cc
index 3edc94c..8a36743 100644
--- a/cc/resources/picture_unittest.cc
+++ b/cc/resources/picture_unittest.cc
@@ -10,10 +10,10 @@
#include "cc/test/fake_content_layer_client.h"
#include "cc/test/skia_common.h"
#include "testing/gtest/include/gtest/gtest.h"
+#include "third_party/skia/include/core/SkBBHFactory.h"
#include "third_party/skia/include/core/SkCanvas.h"
#include "third_party/skia/include/core/SkGraphics.h"
#include "third_party/skia/include/core/SkPixelRef.h"
-#include "third_party/skia/include/core/SkTileGridPicture.h"
#include "ui/gfx/rect.h"
#include "ui/gfx/skia_util.h"
@@ -25,7 +25,7 @@ TEST(PictureTest, AsBase64String) {
gfx::Rect layer_rect(100, 100);
- SkTileGridPicture::TileGridInfo tile_grid_info;
+ SkTileGridFactory::TileGridInfo tile_grid_info;
tile_grid_info.fTileInterval = SkISize::Make(100, 100);
tile_grid_info.fMargin.setEmpty();
tile_grid_info.fOffset.setZero();
@@ -110,7 +110,7 @@ TEST(PictureTest, AsBase64String) {
TEST(PictureTest, PixelRefIterator) {
gfx::Rect layer_rect(2048, 2048);
- SkTileGridPicture::TileGridInfo tile_grid_info;
+ SkTileGridFactory::TileGridInfo tile_grid_info;
tile_grid_info.fTileInterval = SkISize::Make(512, 512);
tile_grid_info.fMargin.setEmpty();
tile_grid_info.fOffset.setZero();
@@ -211,7 +211,7 @@ TEST(PictureTest, PixelRefIterator) {
TEST(PictureTest, PixelRefIteratorNonZeroLayer) {
gfx::Rect layer_rect(1024, 0, 2048, 2048);
- SkTileGridPicture::TileGridInfo tile_grid_info;
+ SkTileGridFactory::TileGridInfo tile_grid_info;
tile_grid_info.fTileInterval = SkISize::Make(512, 512);
tile_grid_info.fMargin.setEmpty();
tile_grid_info.fOffset.setZero();
@@ -335,7 +335,7 @@ TEST(PictureTest, PixelRefIteratorNonZeroLayer) {
TEST(PictureTest, PixelRefIteratorOnePixelQuery) {
gfx::Rect layer_rect(2048, 2048);
- SkTileGridPicture::TileGridInfo tile_grid_info;
+ SkTileGridFactory::TileGridInfo tile_grid_info;
tile_grid_info.fTileInterval = SkISize::Make(512, 512);
tile_grid_info.fMargin.setEmpty();
tile_grid_info.fOffset.setZero();
@@ -393,7 +393,7 @@ TEST(PictureTest, CreateFromSkpValue) {
gfx::Rect layer_rect(100, 200);
- SkTileGridPicture::TileGridInfo tile_grid_info;
+ SkTileGridFactory::TileGridInfo tile_grid_info;
tile_grid_info.fTileInterval = SkISize::Make(100, 200);
tile_grid_info.fMargin.setEmpty();
tile_grid_info.fOffset.setZero();
@@ -448,7 +448,7 @@ TEST(PictureTest, RecordingModes) {
gfx::Rect layer_rect(100, 200);
- SkTileGridPicture::TileGridInfo tile_grid_info;
+ SkTileGridFactory::TileGridInfo tile_grid_info;
tile_grid_info.fTileInterval = SkISize::Make(100, 200);
tile_grid_info.fMargin.setEmpty();
tile_grid_info.fOffset.setZero();
diff --git a/cc/resources/skpicture_content_layer_updater.cc b/cc/resources/skpicture_content_layer_updater.cc
index 645258a..0f9f22e 100644
--- a/cc/resources/skpicture_content_layer_updater.cc
+++ b/cc/resources/skpicture_content_layer_updater.cc
@@ -10,6 +10,7 @@
#include "cc/resources/prioritized_resource.h"
#include "cc/resources/resource_update_queue.h"
#include "third_party/skia/include/core/SkCanvas.h"
+#include "third_party/skia/include/core/SkPictureRecorder.h"
namespace cc {
@@ -28,8 +29,8 @@ void SkPictureContentLayerUpdater::PrepareToUpdate(
float contents_height_scale,
gfx::Rect* resulting_opaque_rect) {
SkPictureRecorder recorder;
- SkCanvas* canvas =
- recorder.beginRecording(content_rect.width(), content_rect.height());
+ SkCanvas* canvas = recorder.beginRecording(
+ content_rect.width(), content_rect.height(), NULL, 0);
DCHECK_EQ(content_rect.width(), canvas->getBaseLayerSize().width());
DCHECK_EQ(content_rect.height(), canvas->getBaseLayerSize().height());
base::TimeTicks start_time =