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

Unified Diff: pdf/instance.cc

Issue 375253002: [Chrome] Support NumCopies print preset (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Review feedback (oop proxy, out-param) Created 6 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: 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);

Powered by Google App Engine
This is Rietveld 408576698