Index: content/renderer/pepper/pepper_plugin_instance_impl.cc |
diff --git a/content/renderer/pepper/pepper_plugin_instance_impl.cc b/content/renderer/pepper/pepper_plugin_instance_impl.cc |
index 49830a5d4982c60004d9df3ca4f9e1dc06731e90..ac71137a1f9392a08aca6eca28bd651154a6e8dc 100644 |
--- a/content/renderer/pepper/pepper_plugin_instance_impl.cc |
+++ b/content/renderer/pepper/pepper_plugin_instance_impl.cc |
@@ -111,6 +111,7 @@ |
#include "third_party/WebKit/public/web/WebLocalFrame.h" |
#include "third_party/WebKit/public/web/WebPluginContainer.h" |
#include "third_party/WebKit/public/web/WebPrintParams.h" |
+#include "third_party/WebKit/public/web/WebPrintPresetOptions.h" |
#include "third_party/WebKit/public/web/WebPrintScalingOption.h" |
#include "third_party/WebKit/public/web/WebScopedUserGesture.h" |
#include "third_party/WebKit/public/web/WebScriptSource.h" |
@@ -1490,7 +1491,7 @@ bool PepperPluginInstanceImpl::LoadMouseLockInterface() { |
bool PepperPluginInstanceImpl::LoadPdfInterface() { |
if (!checked_for_plugin_pdf_interface_) { |
checked_for_plugin_pdf_interface_ = true; |
- plugin_pdf_interface_ = static_cast<const PPP_Pdf_1*>( |
+ plugin_pdf_interface_ = static_cast<const PPP_Pdf*>( |
module_->GetPluginInterface(PPP_PDF_INTERFACE_1)); |
} |
@@ -1795,6 +1796,25 @@ void PepperPluginInstanceImpl::PrintEnd() { |
#endif // defined(OS_MACOSX) |
} |
+bool PepperPluginInstanceImpl::GetPrintPresetOptionsFromDocument( |
+ blink::WebPrintPresetOptions* preset_options) { |
+ // Keep a reference on the stack. See NOTE above. |
+ scoped_refptr<PepperPluginInstanceImpl> ref(this); |
+ if (!LoadPdfInterface()) |
+ return false; |
+ |
+ PPP_PdfPrintPresetOptions_Dev options; |
+ if (!plugin_pdf_interface_->GetPrintPresetOptionsFromDocument(pp_instance(), |
+ &options)) { |
+ return false; |
+ } |
+ |
+ preset_options->isScalingDisabled = options.is_scaling_disabled; |
+ preset_options->copies = options.copies; |
+ |
+ return true; |
+} |
+ |
bool PepperPluginInstanceImpl::CanRotateView() { |
if (!LoadPdfInterface()) |
return false; |