summaryrefslogtreecommitdiffstats
path: root/ui/compositor
diff options
context:
space:
mode:
authorpkotwicz@chromium.org <pkotwicz@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-07-24 16:51:16 +0000
committerpkotwicz@chromium.org <pkotwicz@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-07-24 16:51:16 +0000
commitde13f35d1ffedf90f791fa5bb127697094771c2c (patch)
treefac7173e5bcc6d5f8988043d657f012d45c68e81 /ui/compositor
parente3301c30d83b7b9c895fba14d1f78491906c86b7 (diff)
downloadchromium_src-de13f35d1ffedf90f791fa5bb127697094771c2c.zip
chromium_src-de13f35d1ffedf90f791fa5bb127697094771c2c.tar.gz
chromium_src-de13f35d1ffedf90f791fa5bb127697094771c2c.tar.bz2
Cleanup gfx::Canvas now that 10562027 has landed
Bug=None Test=Compiles on Mac and CrOS R=oshima,sky TBR=sadrul,sail Review URL: https://chromiumcodereview.appspot.com/10701063 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@148123 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'ui/compositor')
-rw-r--r--ui/compositor/layer.cc14
-rw-r--r--ui/compositor/layer_unittest.cc4
2 files changed, 13 insertions, 5 deletions
diff --git a/ui/compositor/layer.cc b/ui/compositor/layer.cc
index a3ae747..6c30d52 100644
--- a/ui/compositor/layer.cc
+++ b/ui/compositor/layer.cc
@@ -488,11 +488,19 @@ void Layer::paintContents(WebKit::WebCanvas* web_canvas,
WebKit::WebRect& opaque) {
#endif
TRACE_EVENT0("ui", "Layer::paintContents");
- gfx::Canvas canvas(web_canvas,
- ui::GetScaleFactorFromScale(device_scale_factor_), scale_content_);
+ scoped_ptr<gfx::Canvas> canvas(gfx::Canvas::CreateCanvasWithoutScaling(
+ web_canvas, ui::GetScaleFactorFromScale(device_scale_factor_)));
+
+ if (scale_content_) {
+ canvas->Save();
+ canvas->sk_canvas()->scale(SkFloatToScalar(device_scale_factor_),
+ SkFloatToScalar(device_scale_factor_));
+ }
if (delegate_)
- delegate_->OnPaintLayer(&canvas);
+ delegate_->OnPaintLayer(canvas.get());
+ if (scale_content_)
+ canvas->Restore();
}
unsigned Layer::prepareTexture(WebKit::WebTextureUpdater& /* updater */) {
diff --git a/ui/compositor/layer_unittest.cc b/ui/compositor/layer_unittest.cc
index c72bdd4..08623a7 100644
--- a/ui/compositor/layer_unittest.cc
+++ b/ui/compositor/layer_unittest.cc
@@ -238,8 +238,8 @@ class TestLayerDelegate : public LayerDelegate {
// Overridden from LayerDelegate:
virtual void OnPaintLayer(gfx::Canvas* canvas) OVERRIDE {
- SkBitmap contents = canvas->ExtractBitmap();
- paint_size_ = gfx::Size(contents.width(), contents.height());
+ gfx::ImageSkiaRep contents = canvas->ExtractImageRep();
+ paint_size_ = gfx::Size(contents.pixel_width(), contents.pixel_height());
canvas->FillRect(gfx::Rect(paint_size_), colors_[color_index_]);
color_index_ = (color_index_ + 1) % static_cast<int>(colors_.size());
const SkMatrix& matrix = canvas->sk_canvas()->getTotalMatrix();