summaryrefslogtreecommitdiffstats
path: root/printing
diff options
context:
space:
mode:
authorvitalybuka <vitalybuka@chromium.org>2015-05-04 20:03:32 -0700
committerCommit bot <commit-bot@chromium.org>2015-05-05 03:03:59 +0000
commit95fa3c9594c34b3009d521bb3347af9b67d4d314 (patch)
treeb195dcf1c4166c03c638090cfc32d9150c8e2804 /printing
parent32587b7745a96943cfbb49041eb37ea5b5724783 (diff)
downloadchromium_src-95fa3c9594c34b3009d521bb3347af9b67d4d314.zip
chromium_src-95fa3c9594c34b3009d521bb3347af9b67d4d314.tar.gz
chromium_src-95fa3c9594c34b3009d521bb3347af9b67d4d314.tar.bz2
Allow page range selection in system dialog called from preview
Two location for this option could case small confusion. Still some users may prefer to select pages in system dialog. BUG=461843 Review URL: https://codereview.chromium.org/1124433006 Cr-Commit-Position: refs/heads/master@{#328260}
Diffstat (limited to 'printing')
-rw-r--r--printing/printing_context.cc9
-rw-r--r--printing/printing_context.h3
-rw-r--r--printing/printing_context_android.cc3
-rw-r--r--printing/printing_context_android.h3
-rw-r--r--printing/printing_context_linux.cc3
-rw-r--r--printing/printing_context_linux.h3
-rw-r--r--printing/printing_context_mac.h3
-rw-r--r--printing/printing_context_mac.mm3
-rw-r--r--printing/printing_context_no_system_dialog.cc3
-rw-r--r--printing/printing_context_no_system_dialog.h3
-rw-r--r--printing/printing_context_win.cc6
-rw-r--r--printing/printing_context_win.h3
12 files changed, 30 insertions, 15 deletions
diff --git a/printing/printing_context.cc b/printing/printing_context.cc
index 9748a17..16f1103 100644
--- a/printing/printing_context.cc
+++ b/printing/printing_context.cc
@@ -118,10 +118,13 @@ PrintingContext::Result PrintingContext::UpdatePrintSettings(
}
bool show_system_dialog = false;
- job_settings.GetBoolean(printing::kSettingShowSystemDialog,
- &show_system_dialog);
+ job_settings.GetBoolean(kSettingShowSystemDialog, &show_system_dialog);
- return UpdatePrinterSettings(open_in_external_preview, show_system_dialog);
+ int page_count = 0;
+ job_settings.GetInteger(kSettingPreviewPageCount, &page_count);
+
+ return UpdatePrinterSettings(open_in_external_preview, show_system_dialog,
+ page_count);
}
} // namespace printing
diff --git a/printing/printing_context.h b/printing/printing_context.h
index 0d9f605..3d260ef 100644
--- a/printing/printing_context.h
+++ b/printing/printing_context.h
@@ -77,7 +77,8 @@ class PRINTING_EXPORT PrintingContext {
// |external_preview| is true if pdf is going to be opened in external
// preview. Used by MacOS only now to open Preview.app.
virtual Result UpdatePrinterSettings(bool external_preview,
- bool show_system_dialog) = 0;
+ bool show_system_dialog,
+ int page_count) = 0;
// Updates Print Settings. |job_settings| contains all print job
// settings information. |ranges| has the new page range settings.
diff --git a/printing/printing_context_android.cc b/printing/printing_context_android.cc
index 3be1251..c524883b 100644
--- a/printing/printing_context_android.cc
+++ b/printing/printing_context_android.cc
@@ -182,7 +182,8 @@ gfx::Size PrintingContextAndroid::GetPdfPaperSizeDeviceUnits() {
PrintingContext::Result PrintingContextAndroid::UpdatePrinterSettings(
bool external_preview,
- bool show_system_dialog) {
+ bool show_system_dialog,
+ int page_count) {
DCHECK(!show_system_dialog);
DCHECK(!in_print_job_);
diff --git a/printing/printing_context_android.h b/printing/printing_context_android.h
index 6962c09..c0d84be 100644
--- a/printing/printing_context_android.h
+++ b/printing/printing_context_android.h
@@ -40,7 +40,8 @@ class PRINTING_EXPORT PrintingContextAndroid : public PrintingContext {
Result UseDefaultSettings() override;
gfx::Size GetPdfPaperSizeDeviceUnits() override;
Result UpdatePrinterSettings(bool external_preview,
- bool show_system_dialog) override;
+ bool show_system_dialog,
+ int page_count) override;
Result InitWithSettings(const PrintSettings& settings) override;
Result NewDocument(const base::string16& document_name) override;
Result NewPage() override;
diff --git a/printing/printing_context_linux.cc b/printing/printing_context_linux.cc
index a1fc1f6..83d321e 100644
--- a/printing/printing_context_linux.cc
+++ b/printing/printing_context_linux.cc
@@ -107,7 +107,8 @@ gfx::Size PrintingContextLinux::GetPdfPaperSizeDeviceUnits() {
PrintingContext::Result PrintingContextLinux::UpdatePrinterSettings(
bool external_preview,
- bool show_system_dialog) {
+ bool show_system_dialog,
+ int page_count) {
DCHECK(!show_system_dialog);
DCHECK(!in_print_job_);
DCHECK(!external_preview) << "Not implemented";
diff --git a/printing/printing_context_linux.h b/printing/printing_context_linux.h
index 611fd56..0de512c 100644
--- a/printing/printing_context_linux.h
+++ b/printing/printing_context_linux.h
@@ -44,7 +44,8 @@ class PRINTING_EXPORT PrintingContextLinux : public PrintingContext {
gfx::Size GetPdfPaperSizeDeviceUnits() override;
Result UseDefaultSettings() override;
Result UpdatePrinterSettings(bool external_preview,
- bool show_system_dialog) override;
+ bool show_system_dialog,
+ int page_count) override;
Result InitWithSettings(const PrintSettings& settings) override;
Result NewDocument(const base::string16& document_name) override;
Result NewPage() override;
diff --git a/printing/printing_context_mac.h b/printing/printing_context_mac.h
index c9474b6..acccff3 100644
--- a/printing/printing_context_mac.h
+++ b/printing/printing_context_mac.h
@@ -29,7 +29,8 @@ class PRINTING_EXPORT PrintingContextMac : public PrintingContext {
Result UseDefaultSettings() override;
gfx::Size GetPdfPaperSizeDeviceUnits() override;
Result UpdatePrinterSettings(bool external_preview,
- bool show_system_dialog) override;
+ bool show_system_dialog,
+ int page_count) override;
Result InitWithSettings(const PrintSettings& settings) override;
Result NewDocument(const base::string16& document_name) override;
Result NewPage() override;
diff --git a/printing/printing_context_mac.mm b/printing/printing_context_mac.mm
index d0e900f..8689897 100644
--- a/printing/printing_context_mac.mm
+++ b/printing/printing_context_mac.mm
@@ -169,7 +169,8 @@ PrintingContext::Result PrintingContextMac::UseDefaultSettings() {
PrintingContext::Result PrintingContextMac::UpdatePrinterSettings(
bool external_preview,
- bool show_system_dialog) {
+ bool show_system_dialog,
+ int page_count) {
DCHECK(!show_system_dialog);
DCHECK(!in_print_job_);
diff --git a/printing/printing_context_no_system_dialog.cc b/printing/printing_context_no_system_dialog.cc
index b6246d6..746232a 100644
--- a/printing/printing_context_no_system_dialog.cc
+++ b/printing/printing_context_no_system_dialog.cc
@@ -77,7 +77,8 @@ gfx::Size PrintingContextNoSystemDialog::GetPdfPaperSizeDeviceUnits() {
PrintingContext::Result PrintingContextNoSystemDialog::UpdatePrinterSettings(
bool external_preview,
- bool show_system_dialog) {
+ bool show_system_dialog,
+ int page_count) {
DCHECK(!show_system_dialog);
if (settings_.dpi() == 0)
diff --git a/printing/printing_context_no_system_dialog.h b/printing/printing_context_no_system_dialog.h
index 112d74d..0bbc1ef 100644
--- a/printing/printing_context_no_system_dialog.h
+++ b/printing/printing_context_no_system_dialog.h
@@ -28,7 +28,8 @@ class PRINTING_EXPORT PrintingContextNoSystemDialog : public PrintingContext {
Result UseDefaultSettings() override;
gfx::Size GetPdfPaperSizeDeviceUnits() override;
Result UpdatePrinterSettings(bool external_preview,
- bool show_system_dialog) override;
+ bool show_system_dialog,
+ int page_count) override;
Result InitWithSettings(const PrintSettings& settings) override;
Result NewDocument(const base::string16& document_name) override;
Result NewPage() override;
diff --git a/printing/printing_context_win.cc b/printing/printing_context_win.cc
index 9d1df52..e4e4ba2 100644
--- a/printing/printing_context_win.cc
+++ b/printing/printing_context_win.cc
@@ -140,7 +140,8 @@ gfx::Size PrintingContextWin::GetPdfPaperSizeDeviceUnits() {
PrintingContext::Result PrintingContextWin::UpdatePrinterSettings(
bool external_preview,
- bool show_system_dialog) {
+ bool show_system_dialog,
+ int page_count) {
DCHECK(!in_print_job_);
DCHECK(!external_preview) << "Not implemented";
@@ -206,7 +207,8 @@ PrintingContext::Result PrintingContextWin::UpdatePrinterSettings(
// Update data using DocumentProperties.
if (show_system_dialog) {
PrintingContext::Result result = PrintingContext::FAILED;
- AskUserForSettings(0, false, false, base::Bind(&AssingResult, &result));
+ AskUserForSettings(page_count, false, false,
+ base::Bind(&AssingResult, &result));
return result;
} else {
scoped_dev_mode = CreateDevMode(printer.Get(), scoped_dev_mode.get());
diff --git a/printing/printing_context_win.h b/printing/printing_context_win.h
index 9dba3ca..792088a 100644
--- a/printing/printing_context_win.h
+++ b/printing/printing_context_win.h
@@ -29,7 +29,8 @@ class PRINTING_EXPORT PrintingContextWin : public PrintingContext {
Result UseDefaultSettings() override;
gfx::Size GetPdfPaperSizeDeviceUnits() override;
Result UpdatePrinterSettings(bool external_preview,
- bool show_system_dialog) override;
+ bool show_system_dialog,
+ int page_count) override;
Result InitWithSettings(const PrintSettings& settings) override;
Result NewDocument(const base::string16& document_name) override;
Result NewPage() override;