diff options
author | piman@chromium.org <piman@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-10-05 19:05:07 +0000 |
---|---|---|
committer | piman@chromium.org <piman@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-10-05 19:05:07 +0000 |
commit | be172ba8194e48970d90e9d873160b259df69b96 (patch) | |
tree | 677a1fedc8a836a42de1dba22d8c0663173a0f96 /ui/gfx/canvas_skia_linux.cc | |
parent | 2c572bd1d4eec134ae40e00adbfa2c9d3d1ff1e7 (diff) | |
download | chromium_src-be172ba8194e48970d90e9d873160b259df69b96.zip chromium_src-be172ba8194e48970d90e9d873160b259df69b96.tar.gz chromium_src-be172ba8194e48970d90e9d873160b259df69b96.tar.bz2 |
Allow CanvasSkia to bind to an existing SkCanvas.
BUG=None
TEST=None
Review URL: http://codereview.chromium.org/8122013
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@104146 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'ui/gfx/canvas_skia_linux.cc')
-rw-r--r-- | ui/gfx/canvas_skia_linux.cc | 20 |
1 files changed, 5 insertions, 15 deletions
diff --git a/ui/gfx/canvas_skia_linux.cc b/ui/gfx/canvas_skia_linux.cc index 882b381..8101dfa 100644 --- a/ui/gfx/canvas_skia_linux.cc +++ b/ui/gfx/canvas_skia_linux.cc @@ -93,7 +93,7 @@ DrawStringContext::DrawStringContext(gfx::CanvasSkia* canvas, text_direction_(base::i18n::GetFirstStrongCharacterDirection(text)) { DCHECK(!bounds_.IsEmpty()); - cr_ = skia::BeginPlatformPaint(canvas_); + cr_ = skia::BeginPlatformPaint(canvas_->sk_canvas()); layout_ = pango_cairo_create_layout(cr_); gfx::SetupPangoLayout( @@ -120,7 +120,7 @@ DrawStringContext::DrawStringContext(gfx::CanvasSkia* canvas, DrawStringContext::~DrawStringContext() { cairo_restore(cr_); - skia::EndPlatformPaint(canvas_); + skia::EndPlatformPaint(canvas_->sk_canvas()); g_object_unref(layout_); // NOTE: BeginPlatformPaint returned its surface, we shouldn't destroy it. } @@ -176,7 +176,7 @@ void DrawStringContext::DrawWithHalo(const SkColor& text_color, 0, 0, bounds_.width() + 2, bounds_.height() + 2); { - skia::ScopedPlatformPaint scoped_platform_paint(&text_canvas); + skia::ScopedPlatformPaint scoped_platform_paint(text_canvas.sk_canvas()); cairo_t* text_cr = scoped_platform_paint.GetPlatformSurface(); // TODO: The current approach (stroking the text path to generate the halo @@ -216,7 +216,7 @@ void DrawStringContext::DrawWithHalo(const SkColor& text_color, } const SkBitmap& text_bitmap = const_cast<SkBitmap&>( - skia::GetTopDevice(text_canvas)->accessBitmap(false)); + skia::GetTopDevice(*text_canvas.sk_canvas())->accessBitmap(false)); canvas_->DrawBitmapInt(text_bitmap, text_x_ - 1, text_y_ - 1); } @@ -237,16 +237,6 @@ void DrawStringContext::DrawUnderline(cairo_t* cr, double extra_edge_width) { namespace gfx { -CanvasSkia::CanvasSkia(int width, int height, bool is_opaque) - : skia::PlatformCanvas(width, height, is_opaque) { -} - -CanvasSkia::CanvasSkia() : skia::PlatformCanvas() { -} - -CanvasSkia::~CanvasSkia() { -} - // static void CanvasSkia::SizeStringInt(const string16& text, const gfx::Font& font, @@ -338,7 +328,7 @@ void CanvasSkia::DrawGdkPixbuf(GdkPixbuf* pixbuf, int x, int y) { return; } - skia::ScopedPlatformPaint scoped_platform_paint(this); + skia::ScopedPlatformPaint scoped_platform_paint(canvas_); cairo_t* cr = scoped_platform_paint.GetPlatformSurface(); gdk_cairo_set_source_pixbuf(cr, pixbuf, x, y); cairo_paint(cr); |