summaryrefslogtreecommitdiffstats
path: root/pdf/out_of_process_instance.cc
diff options
context:
space:
mode:
authorn.bansal <n.bansal@samsung.com>2014-11-19 00:38:48 -0800
committerCommit bot <commit-bot@chromium.org>2014-11-19 08:39:13 +0000
commit64c4daa7d64fc28efd1e49bf3548323eb67a32ec (patch)
tree2e2255c3caa533e38d359cf139e9d598f8d6938d /pdf/out_of_process_instance.cc
parent8747c1d912e10bbb8fe746ff6a06bb5a3d067efc (diff)
downloadchromium_src-64c4daa7d64fc28efd1e49bf3548323eb67a32ec.zip
chromium_src-64c4daa7d64fc28efd1e49bf3548323eb67a32ec.tar.gz
chromium_src-64c4daa7d64fc28efd1e49bf3548323eb67a32ec.tar.bz2
Support NumCopies print preset
Chrome side changes to support NumCopies print preset option. Copies in print preview dialog should be set to value set for NumCopies in pdf source document. BUG=169120 Review URL: https://codereview.chromium.org/375253002 Cr-Commit-Position: refs/heads/master@{#304785}
Diffstat (limited to 'pdf/out_of_process_instance.cc')
-rw-r--r--pdf/out_of_process_instance.cc21
1 files changed, 20 insertions, 1 deletions
diff --git a/pdf/out_of_process_instance.cc b/pdf/out_of_process_instance.cc
index 92ef550..e195067 100644
--- a/pdf/out_of_process_instance.cc
+++ b/pdf/out_of_process_instance.cc
@@ -166,9 +166,22 @@ void Transform(PP_Instance instance, PP_PrivatePageTransformType type) {
}
}
+PP_Bool GetPrintPresetOptionsFromDocument(
+ PP_Instance instance,
+ PP_PdfPrintPresetOptions_Dev* options) {
+ void* object = pp::Instance::GetPerInstanceObject(instance, kPPPPdfInterface);
+ if (object) {
+ OutOfProcessInstance* obj_instance =
+ static_cast<OutOfProcessInstance*>(object);
+ obj_instance->GetPrintPresetOptionsFromDocument(options);
+ }
+ return PP_TRUE;
+}
+
const PPP_Pdf ppp_private = {
&GetLinkAtPosition,
- &Transform
+ &Transform,
+ &GetPrintPresetOptionsFromDocument
};
int ExtractPrintPreviewPageIndex(const std::string& src_url) {
@@ -551,6 +564,12 @@ void OutOfProcessInstance::DidChangeView(const pp::View& view) {
}
}
+void OutOfProcessInstance::GetPrintPresetOptionsFromDocument(
+ PP_PdfPrintPresetOptions_Dev* options) {
+ options->is_scaling_disabled = PP_FromBool(IsPrintScalingDisabled());
+ options->copies = engine_->GetCopiesToPrint();
+}
+
pp::Var OutOfProcessInstance::GetLinkAtPosition(
const pp::Point& point) {
pp::Point offset_point(point);