Index: pdf/instance.cc |
diff --git a/pdf/instance.cc b/pdf/instance.cc |
index 6a68400d6ee4e185291c7c5c8fcf7d9174056752..db5ecd25169ba239be00fa135e20a63804ac4568 100644 |
--- a/pdf/instance.cc |
+++ b/pdf/instance.cc |
@@ -188,7 +188,7 @@ const ToolbarButtonInfo kPrintPreviewToolbarButtons[] = { |
PP_RESOURCEIMAGE_PDF_BUTTON_ZOOMIN_END_PRESSED }, |
}; |
-static const char kPPPPdfInterface[] = PPP_PDF_INTERFACE_1; |
+static const char kPPPPdfInterface[] = PPP_PDF_INTERFACE_1_1; |
PP_Var GetLinkAtPosition(PP_Instance instance, PP_Point point) { |
pp::Var var; |
@@ -215,9 +215,21 @@ void Transform(PP_Instance instance, PP_PrivatePageTransformType type) { |
} |
} |
+PP_Bool GetPrintPresetOptionsFromDocument(PP_Instance instance, |
+ PP_PrintPresetOptions_Dev* options) { |
+ void* object = pp::Instance::GetPerInstanceObject(instance, kPPPPdfInterface); |
+ PP_Bool ret = PP_FALSE; |
+ if (object) { |
+ Instance* obj_instance = static_cast<Instance*>(object); |
+ ret = obj_instance->GetPrintPresetOptionsFromDocument(options); |
+ } |
+ return ret; |
+} |
+ |
const PPP_Pdf ppp_private = { |
&GetLinkAtPosition, |
- &Transform |
+ &Transform, |
+ &GetPrintPresetOptionsFromDocument |
}; |
int ExtractPrintPreviewPageIndex(const std::string& src_url) { |
@@ -652,6 +664,14 @@ pp::Var Instance::GetInstanceObject() { |
return instance_object_; |
} |
+PP_Bool Instance::GetPrintPresetOptionsFromDocument( |
+ PP_PrintPresetOptions_Dev* options) { |
+ options->is_scaling_disabled = PP_FromBool(IsPrintScalingDisabled()); |
+ options->copies = engine_->GetCopiesToPrint(); |
+ |
+ return PP_TRUE; |
raymes
2014/09/24 04:54:39
If the return value is always PP_TRUE, we might as
Nikhil
2014/09/29 11:15:30
I think it can be removed. I'm not sure about beha
raymes
2014/10/01 17:26:23
If you want to keep the PP_Bool in the API, that's
Nikhil
2014/10/07 09:53:37
Done.
|
+} |
+ |
pp::Var Instance::GetLinkAtPosition(const pp::Point& point) { |
pp::Point offset_point(point); |
ScalePoint(device_scale_, &offset_point); |