summaryrefslogtreecommitdiffstats
path: root/cc/resources
diff options
context:
space:
mode:
authorjamesr@chromium.org <jamesr@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-11-21 23:23:44 +0000
committerjamesr@chromium.org <jamesr@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-11-21 23:23:44 +0000
commit1f941525851d1ee4a59fb6bf8a3a60dfd6e97467 (patch)
treec934195965d278c47c4c492b21505aa053aaa9c8 /cc/resources
parente1d9b36b1db6ae86f1b9248cbdc42a41efcc1728 (diff)
downloadchromium_src-1f941525851d1ee4a59fb6bf8a3a60dfd6e97467.zip
chromium_src-1f941525851d1ee4a59fb6bf8a3a60dfd6e97467.tar.gz
chromium_src-1f941525851d1ee4a59fb6bf8a3a60dfd6e97467.tar.bz2
Use SkBitmap backing instead of GDI backed platform canvas for tiles
BUG=321185 Review URL: https://codereview.chromium.org/80063002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@236625 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'cc/resources')
-rw-r--r--cc/resources/bitmap_content_layer_updater.cc8
-rw-r--r--cc/resources/bitmap_content_layer_updater.h2
2 files changed, 8 insertions, 2 deletions
diff --git a/cc/resources/bitmap_content_layer_updater.cc b/cc/resources/bitmap_content_layer_updater.cc
index 26aee92..7168c54 100644
--- a/cc/resources/bitmap_content_layer_updater.cc
+++ b/cc/resources/bitmap_content_layer_updater.cc
@@ -66,8 +66,12 @@ void BitmapContentLayerUpdater::PrepareToUpdate(
devtools_instrumentation::ScopedLayerTask paint_setup(
devtools_instrumentation::kPaintSetup, layer_id_);
canvas_size_ = content_rect.size();
- canvas_ = skia::AdoptRef(skia::CreateBitmapCanvas(
- canvas_size_.width(), canvas_size_.height(), layer_is_opaque_));
+ bitmap_backing_.setConfig(
+ SkBitmap::kARGB_8888_Config,
+ canvas_size_.width(), canvas_size_.height(),
+ 0, layer_is_opaque_ ? kOpaque_SkAlphaType : kPremul_SkAlphaType);
+ bitmap_backing_.allocPixels();
+ canvas_ = skia::AdoptRef(new SkCanvas(bitmap_backing_));
}
base::TimeTicks start_time =
diff --git a/cc/resources/bitmap_content_layer_updater.h b/cc/resources/bitmap_content_layer_updater.h
index 2a417f0..ecc0c15 100644
--- a/cc/resources/bitmap_content_layer_updater.h
+++ b/cc/resources/bitmap_content_layer_updater.h
@@ -8,6 +8,7 @@
#include "cc/base/cc_export.h"
#include "cc/resources/content_layer_updater.h"
#include "skia/ext/refptr.h"
+#include "third_party/skia/include/core/SkBitmap.h"
class SkCanvas;
@@ -65,6 +66,7 @@ class CC_EXPORT BitmapContentLayerUpdater : public ContentLayerUpdater {
int layer_id);
virtual ~BitmapContentLayerUpdater();
+ SkBitmap bitmap_backing_;
skia::RefPtr<SkCanvas> canvas_;
gfx::Size canvas_size_;
bool opaque_;