From 2e2ed3b0a0325286ec7024d2d379fed9c141f8bb Mon Sep 17 00:00:00 2001 From: "twiz@chromium.org" Date: Thu, 25 Aug 2011 15:31:51 +0000 Subject: Revert 98230 - CL removing inheritance of SkDevice from PlatformDevice. PlatformDevice is now a base interface, which is implemented by the various flavours of BitmapPlatformDevice, and VectorPlatformDevice. The BitmapPlatformDevice and VectorPlatformDevice classes now inherit directly from SkDevice, or SkPDFDevice, as appropriate. PlatformDevice helper functions access the PlatformDevice interface attached to a SkDevice via meta-data on the SkDevice. BUG=none TEST=none Review URL: http://codereview.chromium.org/7633040 TBR=twiz@chromium.org,jbates@chromium.org, dpolukhin@chromium.org, sanjeevr@chromium.org Review URL: http://codereview.chromium.org/7754001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@98233 0039d316-1c4b-4281-b951-d872f2087c98 --- printing/pdf_metafile_skia.cc | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) (limited to 'printing/pdf_metafile_skia.cc') diff --git a/printing/pdf_metafile_skia.cc b/printing/pdf_metafile_skia.cc index 0ec540e..bc44131 100644 --- a/printing/pdf_metafile_skia.cc +++ b/printing/pdf_metafile_skia.cc @@ -61,14 +61,17 @@ SkDevice* PdfMetafileSkia::StartPageForVectorCanvas( transform.preScale(SkFloatToScalar(scale_factor), SkFloatToScalar(scale_factor)); + // TODO(ctguil): Refactor: don't create the PDF device explicitly here. SkISize pdf_page_size = SkISize::Make(page_size.width(), page_size.height()); SkISize pdf_content_size = SkISize::Make(content_area.width(), content_area.height()); SkRefPtr pdf_device = - new skia::VectorPlatformDeviceSkia(pdf_page_size, pdf_content_size, - transform); - data_->current_page_ = pdf_device; - return pdf_device.get(); + new SkPDFDevice(pdf_page_size, pdf_content_size, transform); + pdf_device->unref(); // SkRefPtr and new both took a reference. + skia::VectorPlatformDeviceSkia* device = + new skia::VectorPlatformDeviceSkia(pdf_device.get()); + data_->current_page_ = device->PdfDevice(); + return device; } bool PdfMetafileSkia::StartPage(const gfx::Size& page_size, -- cgit v1.1