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

Unified Diff: components/printing/renderer/print_web_view_helper.cc

Issue 2272053002: Print Preview: Fix fit to page checkbox. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Fix comment Created 4 years, 4 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
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: components/printing/renderer/print_web_view_helper.cc
diff --git a/components/printing/renderer/print_web_view_helper.cc b/components/printing/renderer/print_web_view_helper.cc
index f566eb6c59031ee12a7d3dc766ac13bb7ee7a660..6973742782e82b0e01f2030c467b8123bd4b16f4 100644
--- a/components/printing/renderer/print_web_view_helper.cc
+++ b/components/printing/renderer/print_web_view_helper.cc
@@ -328,11 +328,13 @@ bool PrintingFrameHasPageSizeStyle(blink::WebLocalFrame* frame,
// Disable scaling when either:
// - The PDF specifies disabling scaling.
-// - All the pages in the PDF are the same size, and that size is the same as
-// the paper size.
+// - All the pages in the PDF are the same size,
+// - |ignore_page_size| is false and the uniform size is the same as the paper
+// size.
Larry LA Ca 2016/09/04 21:09:38 Editorial cmt only, no impact: description should
bool PDFShouldDisableScalingBasedOnPreset(
const blink::WebPrintPresetOptions& options,
- const PrintMsg_Print_Params& params) {
+ const PrintMsg_Print_Params& params,
+ bool ignore_page_size) {
if (options.isScalingDisabled)
return true;
@@ -346,6 +348,9 @@ bool PDFShouldDisableScalingBasedOnPreset(
return true;
}
+ if (ignore_page_size)
Larry LA Ca 2016/09/04 21:09:37 Editorial cmt only, no impact The if (ignore_page_
+ return false;
+
blink::WebSize page_size(
ConvertUnit(params.page_size.width(), dpi, kPointsPerInch),
ConvertUnit(params.page_size.height(), dpi, kPointsPerInch));
@@ -354,19 +359,21 @@ bool PDFShouldDisableScalingBasedOnPreset(
bool PDFShouldDisableScaling(blink::WebLocalFrame* frame,
const blink::WebNode& node,
- const PrintMsg_Print_Params& params) {
+ const PrintMsg_Print_Params& params,
+ bool ignore_page_size) {
const bool kDefaultPDFShouldDisableScalingSetting = true;
blink::WebPrintPresetOptions preset_options;
if (!frame->getPrintPresetOptionsForPlugin(node, &preset_options))
return kDefaultPDFShouldDisableScalingSetting;
- return PDFShouldDisableScalingBasedOnPreset(preset_options, params);
+ return PDFShouldDisableScalingBasedOnPreset(preset_options, params,
+ ignore_page_size);
}
#if defined(ENABLE_BASIC_PRINTING)
MarginType GetMarginsForPdf(blink::WebLocalFrame* frame,
const blink::WebNode& node,
const PrintMsg_Print_Params& params) {
- return PDFShouldDisableScaling(frame, node, params) ?
+ return PDFShouldDisableScaling(frame, node, params, false) ?
NO_MARGINS : PRINTABLE_AREA_MARGINS;
}
#endif
@@ -407,7 +414,8 @@ blink::WebPrintScalingOption GetPrintScalingOption(
if (!FitToPageEnabled(job_settings))
return blink::WebPrintScalingOptionNone;
- bool no_plugin_scaling = PDFShouldDisableScaling(frame, node, params);
+ bool no_plugin_scaling = PDFShouldDisableScaling(frame, node, params,
+ true);
if (params.is_first_request && no_plugin_scaling)
return blink::WebPrintScalingOptionNone;
}
@@ -1588,7 +1596,7 @@ bool PrintWebViewHelper::SetOptionsFromPdfDocument(
}
options->is_scaling_disabled = PDFShouldDisableScalingBasedOnPreset(
- preset_options, print_pages_params_->params);
+ preset_options, print_pages_params_->params, false);
options->copies = preset_options.copies;
// TODO(thestig) This should be a straight pass-through, but print preview
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698