summaryrefslogtreecommitdiffstats
path: root/skia/ext
diff options
context:
space:
mode:
authorreveman@chromium.org <reveman@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-03-21 20:02:04 +0000
committerreveman@chromium.org <reveman@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-03-21 20:02:04 +0000
commitf04c1b203cf4c40071a17ef667bfff287f31bdb9 (patch)
tree21247eae6451810526d6a8d77076318d7eb18b58 /skia/ext
parent4aa0418cbad4b1bdf45d461309d729ab458246c6 (diff)
downloadchromium_src-f04c1b203cf4c40071a17ef667bfff287f31bdb9.zip
chromium_src-f04c1b203cf4c40071a17ef667bfff287f31bdb9.tar.gz
chromium_src-f04c1b203cf4c40071a17ef667bfff287f31bdb9.tar.bz2
aura: Use platform independent canvas by default.
BUG=111587 TEST=none Review URL: http://codereview.chromium.org/9722032 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@128039 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'skia/ext')
-rw-r--r--skia/ext/platform_canvas_skia.cc41
1 files changed, 41 insertions, 0 deletions
diff --git a/skia/ext/platform_canvas_skia.cc b/skia/ext/platform_canvas_skia.cc
new file mode 100644
index 0000000..8551792
--- /dev/null
+++ b/skia/ext/platform_canvas_skia.cc
@@ -0,0 +1,41 @@
+// Copyright (c) 2012 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#include "skia/ext/platform_canvas.h"
+
+#include "base/debug/trace_event.h"
+#include "skia/ext/bitmap_platform_device.h"
+
+namespace skia {
+
+PlatformCanvas::PlatformCanvas(int width, int height, bool is_opaque) {
+ TRACE_EVENT2("skia", "PlatformCanvas::PlatformCanvas",
+ "width", width, "height", height);
+ if (!initialize(width, height, is_opaque))
+ SK_CRASH();
+}
+
+PlatformCanvas::PlatformCanvas(int width, int height, bool is_opaque,
+ uint8_t* data) {
+ TRACE_EVENT2("skia", "PlatformCanvas::PlatformCanvas",
+ "width", width, "height", height);
+ if (!initialize(width, height, is_opaque, data))
+ SK_CRASH();
+}
+
+PlatformCanvas::~PlatformCanvas() {
+}
+
+bool PlatformCanvas::initialize(int width, int height, bool is_opaque,
+ uint8_t* data) {
+ // Use platform specific device for data.
+ if (data)
+ return initializeWithDevice(BitmapPlatformDevice::Create(
+ width, height, is_opaque, data));
+
+ return initializeWithDevice(new SkDevice(
+ SkBitmap::kARGB_8888_Config, width, height, is_opaque));
+}
+
+} // namespace skia