Index: chrome/browser/printing/print_dialog_gtk.cc |
diff --git a/chrome/browser/printing/print_dialog_gtk.cc b/chrome/browser/printing/print_dialog_gtk.cc |
index 557fbb4a01765f196e5b433dacfb18d0576bfb0d..679357a7fe649d40ddea79ea08db7e4c680b610e 100644 |
--- a/chrome/browser/printing/print_dialog_gtk.cc |
+++ b/chrome/browser/printing/print_dialog_gtk.cc |
@@ -21,6 +21,7 @@ |
#include "chrome/browser/ui/browser_window.h" |
#include "printing/metafile.h" |
#include "printing/print_job_constants.h" |
+#include "printing/print_settings.h" |
#include "printing/print_settings_initializer_gtk.h" |
using printing::PageRanges; |
@@ -152,11 +153,13 @@ void PrintDialogGtk::UseDefaultSettings() { |
// No page range to initialize for default settings. |
PageRanges ranges_vector; |
- InitPrintSettings(ranges_vector); |
+ PrintSettings settings; |
+ InitPrintSettings(ranges_vector, &settings); |
} |
-bool PrintDialogGtk::UpdateSettings(const DictionaryValue& settings, |
- const printing::PageRanges& ranges) { |
+bool PrintDialogGtk::UpdateSettings(const DictionaryValue& job_settings, |
+ const printing::PageRanges& ranges, |
+ printing::PrintSettings* settings) { |
bool collate; |
int color; |
bool landscape; |
@@ -165,13 +168,13 @@ bool PrintDialogGtk::UpdateSettings(const DictionaryValue& settings, |
int duplex_mode; |
std::string device_name; |
- if (!settings.GetBoolean(printing::kSettingLandscape, &landscape) || |
- !settings.GetBoolean(printing::kSettingCollate, &collate) || |
- !settings.GetInteger(printing::kSettingColor, &color) || |
- !settings.GetBoolean(printing::kSettingPrintToPDF, &print_to_pdf) || |
- !settings.GetInteger(printing::kSettingDuplexMode, &duplex_mode) || |
- !settings.GetInteger(printing::kSettingCopies, &copies) || |
- !settings.GetString(printing::kSettingDeviceName, &device_name)) { |
+ if (!job_settings.GetBoolean(printing::kSettingLandscape, &landscape) || |
+ !job_settings.GetBoolean(printing::kSettingCollate, &collate) || |
+ !job_settings.GetInteger(printing::kSettingColor, &color) || |
+ !job_settings.GetBoolean(printing::kSettingPrintToPDF, &print_to_pdf) || |
+ !job_settings.GetInteger(printing::kSettingDuplexMode, &duplex_mode) || |
+ !job_settings.GetInteger(printing::kSettingCopies, &copies) || |
+ !job_settings.GetString(printing::kSettingDeviceName, &device_name)) { |
return false; |
} |
@@ -234,7 +237,7 @@ bool PrintDialogGtk::UpdateSettings(const DictionaryValue& settings, |
landscape ? GTK_PAGE_ORIENTATION_LANDSCAPE : |
GTK_PAGE_ORIENTATION_PORTRAIT); |
- InitPrintSettings(ranges); |
+ InitPrintSettings(ranges, settings); |
return true; |
} |
@@ -409,9 +412,9 @@ void PrintDialogGtk::OnJobCompleted(GtkPrintJob* print_job, GError* error) { |
Release(); |
} |
-void PrintDialogGtk::InitPrintSettings(const PageRanges& page_ranges) { |
- PrintSettings settings; |
+void PrintDialogGtk::InitPrintSettings(const PageRanges& page_ranges, |
+ PrintSettings* settings) { |
printing::PrintSettingsInitializerGtk::InitPrintSettings( |
- gtk_settings_, page_setup_, page_ranges, false, &settings); |
- context_->InitWithSettings(settings); |
+ gtk_settings_, page_setup_, page_ranges, false, settings); |
+ context_->InitWithSettings(*settings); |
} |