diff options
author | kmadhusu@chromium.org <kmadhusu@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-09-28 03:07:34 +0000 |
---|---|---|
committer | kmadhusu@chromium.org <kmadhusu@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-09-28 03:07:34 +0000 |
commit | be44f2f511cd692192b2668d40c4226ab3b60ce7 (patch) | |
tree | c3fe9a588245cc30992f529646c186bf5e0df799 /chrome/renderer/print_web_view_helper_mac.mm | |
parent | 8a99325f089a06a2c36cc8cc2987a2ebb98b8bcb (diff) | |
download | chromium_src-be44f2f511cd692192b2668d40c4226ab3b60ce7.zip chromium_src-be44f2f511cd692192b2668d40c4226ab3b60ce7.tar.gz chromium_src-be44f2f511cd692192b2668d40c4226ab3b60ce7.tar.bz2 |
Reland 103021: Printing preview of a PDF on Mac with Skia only previews the last page of the PDF
BUG=93145
TEST=Please refer to bug report.
Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=103021
Original review URL: codereview.chromium.org/7719014
Please refer to trybot results in the last patch of original review url.
Review URL: http://codereview.chromium.org/8059034
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@103082 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/renderer/print_web_view_helper_mac.mm')
-rw-r--r-- | chrome/renderer/print_web_view_helper_mac.mm | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/chrome/renderer/print_web_view_helper_mac.mm b/chrome/renderer/print_web_view_helper_mac.mm index 0e8c3b2..1700f66 100644 --- a/chrome/renderer/print_web_view_helper_mac.mm +++ b/chrome/renderer/print_web_view_helper_mac.mm @@ -17,6 +17,7 @@ #if defined(USE_SKIA) #include "printing/metafile_skia_wrapper.h" +#include "skia/ext/platform_device.h" #include "skia/ext/vector_canvas.h" #include "third_party/WebKit/Source/WebKit/chromium/public/WebCanvas.h" #endif @@ -37,7 +38,7 @@ void PrintWebViewHelper::PrintPageInternal( // Render page for printing. gfx::Rect content_area(params.params.printable_size); RenderPage(params.params.printable_size, content_area, scale_factor, - page_number, frame, &metafile); + page_number, frame, false, &metafile); metafile.FinishDocument(); PrintHostMsg_DidPrintPage_Params page_params; @@ -96,7 +97,7 @@ bool PrintWebViewHelper::RenderPreviewPage(int page_number) { base::TimeTicks begin_time = base::TimeTicks::Now(); RenderPage(printParams.page_size, content_area, scale_factor, page_number, - print_preview_context_.frame(), initial_render_metafile); + print_preview_context_.frame(), true, initial_render_metafile); print_preview_context_.RenderedPreviewPage( base::TimeTicks::Now() - begin_time); @@ -144,7 +145,7 @@ bool PrintWebViewHelper::RenderPreviewPage(int page_number) { void PrintWebViewHelper::RenderPage( const gfx::Size& page_size, const gfx::Rect& content_area, const float& scale_factor, int page_number, WebFrame* frame, - printing::Metafile* metafile) { + bool is_preview, printing::Metafile* metafile) { { #if defined(USE_SKIA) @@ -156,9 +157,9 @@ void PrintWebViewHelper::RenderPage( SkRefPtr<skia::VectorCanvas> canvas = new skia::VectorCanvas(device); canvas->unref(); // SkRefPtr and new both took a reference. WebKit::WebCanvas* canvas_ptr = canvas.get(); - printing::MetafileSkiaWrapper::SetMetafileOnCanvas(canvas.get(), metafile); - printing::MetafileSkiaWrapper::SetDraftMode(canvas.get(), - is_print_ready_metafile_sent_); + printing::MetafileSkiaWrapper::SetMetafileOnCanvas(*canvas, metafile); + skia::SetIsDraftMode(*canvas, is_print_ready_metafile_sent_); + skia::SetIsPreviewMetafile(*canvas, is_preview); #else bool success = metafile->StartPage(page_size, content_area, scale_factor); DCHECK(success); |