Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(113)

Unified Diff: webkit/plugins/ppapi/ppapi_plugin_instance.cc

Issue 7719014: PrintPreview: Printing preview of a PDF on Mac with Skia only previews the last page of the PDF (Closed) Base URL: http://git.chromium.org/git/chromium.git@trunk
Patch Set: '' Created 9 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: webkit/plugins/ppapi/ppapi_plugin_instance.cc
diff --git a/webkit/plugins/ppapi/ppapi_plugin_instance.cc b/webkit/plugins/ppapi/ppapi_plugin_instance.cc
index a31f43ed94d99e78817ffafe28a6b843bb580e3c..1f6226b82f6ad6df89e409bd97cdc27ead0d2e44 100644
--- a/webkit/plugins/ppapi/ppapi_plugin_instance.cc
+++ b/webkit/plugins/ppapi/ppapi_plugin_instance.cc
@@ -847,10 +847,10 @@ int PluginInstance::PrintBegin(const gfx::Rect& printable_area,
if (!num_pages)
return 0;
current_print_settings_ = print_settings;
-#if defined(OS_LINUX) || defined(OS_WIN)
+#if defined(USE_SKIA)
canvas_ = NULL;
ranges_.clear();
-#endif // OS_LINUX || OS_WIN
+#endif // USE_SKIA
return num_pages;
}
@@ -858,14 +858,19 @@ bool PluginInstance::PrintPage(int page_number, WebKit::WebCanvas* canvas) {
DCHECK(plugin_print_interface_);
PP_PrintPageNumberRange_Dev page_range;
page_range.first_page_number = page_range.last_page_number = page_number;
-#if defined(OS_LINUX) || defined(OS_WIN)
- // The canvas only has a metafile on it for print preview.
+#if defined(USE_SKIA)
+#if defined(OS_MACOSX) || defined(OS_WIN)
+ if (printing::MetafileSkiaWrapper::GetMetafileFromCanvas(canvas) &&
vandebo (ex-Chrome) 2011/09/26 17:33:05 Maybe adding an explicit bool variable would make
kmadhusu 2011/09/26 20:42:22 Done.
+ printing::MetafileSkiaWrapper::IsPreviewMetafile(canvas)) {
+#else
+ // Note: The canvas only has a metafile on it for print preview.
if (printing::MetafileSkiaWrapper::GetMetafileFromCanvas(canvas)) {
+#endif
ranges_.push_back(page_range);
canvas_ = canvas;
return true;
} else
-#endif // OS_LINUX || OS_WIN
+#endif
{
return PrintPageHelper(&page_range, 1, canvas);
}
@@ -897,12 +902,12 @@ bool PluginInstance::PrintPageHelper(PP_PrintPageNumberRange_Dev* page_ranges,
void PluginInstance::PrintEnd() {
// Keep a reference on the stack. See NOTE above.
scoped_refptr<PluginInstance> ref(this);
-#if defined(OS_LINUX) || defined(OS_WIN)
+#if defined(USE_SKIA)
if (!ranges_.empty())
PrintPageHelper(&(ranges_.front()), ranges_.size(), canvas_.get());
canvas_ = NULL;
ranges_.clear();
-#endif // OS_LINUX || OS_WIN
+#endif // USE_SKIA
DCHECK(plugin_print_interface_);
if (plugin_print_interface_)
« webkit/plugins/ppapi/ppapi_plugin_instance.h ('K') | « webkit/plugins/ppapi/ppapi_plugin_instance.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698