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 a3c0c0f9050e6799cf82e6ebedd5cf06077d3b8b..96cbe657300389a558bb7513621e9d5d7342b943 100644 |
--- a/content/renderer/pepper/pepper_plugin_instance_impl.cc |
+++ b/content/renderer/pepper/pepper_plugin_instance_impl.cc |
@@ -112,6 +112,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" |
@@ -1504,7 +1505,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)); |
} |
@@ -1814,6 +1815,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; |
+ |
+ PP_PdfPrintPresetOptions_Dev options; |
+ if (!plugin_pdf_interface_->GetPrintPresetOptionsFromDocument(pp_instance(), |
+ &options)) { |
+ return false; |
+ } |
+ |
+ preset_options->isScalingDisabled = PP_ToBool(options.is_scaling_disabled); |
+ preset_options->copies = options.copies; |
+ |
+ return true; |
+} |
+ |
bool PepperPluginInstanceImpl::CanRotateView() { |
if (!LoadPdfInterface()) |
return false; |