| 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);
|
| }
|
|
|