summaryrefslogtreecommitdiffstats
path: root/printing/pdf_metafile_skia.cc
diff options
context:
space:
mode:
authortwiz@chromium.org <twiz@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-08-25 15:31:51 +0000
committertwiz@chromium.org <twiz@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-08-25 15:31:51 +0000
commit2e2ed3b0a0325286ec7024d2d379fed9c141f8bb (patch)
treeb3a5dee8390c8f3eb976904b059687b00070a702 /printing/pdf_metafile_skia.cc
parenta1b30a606da0a1ace5df72c7decf04a4791ef197 (diff)
downloadchromium_src-2e2ed3b0a0325286ec7024d2d379fed9c141f8bb.zip
chromium_src-2e2ed3b0a0325286ec7024d2d379fed9c141f8bb.tar.gz
chromium_src-2e2ed3b0a0325286ec7024d2d379fed9c141f8bb.tar.bz2
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
Diffstat (limited to 'printing/pdf_metafile_skia.cc')
-rw-r--r--printing/pdf_metafile_skia.cc11
1 files changed, 7 insertions, 4 deletions
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<SkPDFDevice> 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,