From a3ee735fe9feb7394231ad867ef42aaea45c011d Mon Sep 17 00:00:00 2001 From: "kmadhusu@chromium.org" Date: Fri, 14 Oct 2011 18:27:35 +0000 Subject: PrintPreview: Added code to honor the grayscale color model. BUG=None TEST=Add a printer which supports grayscale and cmyk color models. Preview a color webpage. Observe that the color options is displayed to the user. Review URL: http://codereview.chromium.org/8280002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@105528 0039d316-1c4b-4281-b951-d872f2087c98 --- chrome/browser/printing/print_system_task_proxy.cc | 2 ++ chrome/browser/resources/print_preview/color_settings.js | 8 ++++++-- printing/print_job_constants.h | 1 + 3 files changed, 9 insertions(+), 2 deletions(-) diff --git a/chrome/browser/printing/print_system_task_proxy.cc b/chrome/browser/printing/print_system_task_proxy.cc index c1811f5..e85e0fe 100644 --- a/chrome/browser/printing/print_system_task_proxy.cc +++ b/chrome/browser/printing/print_system_task_proxy.cc @@ -148,6 +148,8 @@ bool getBasicColorModelSettings( *color_model_for_black = printing::BLACK; else if (ppdFindChoice(color_model, printing::kGray)) *color_model_for_black = printing::GRAY; + else if (ppdFindChoice(color_model, printing::kGrayscale)) + *color_model_for_black = printing::GRAYSCALE; if (ppdFindChoice(color_model, printing::kColor)) *color_model_for_color = printing::COLOR; diff --git a/chrome/browser/resources/print_preview/color_settings.js b/chrome/browser/resources/print_preview/color_settings.js index 9289c9f..f64616b 100644 --- a/chrome/browser/resources/print_preview/color_settings.js +++ b/chrome/browser/resources/print_preview/color_settings.js @@ -77,8 +77,12 @@ cr.define('print_preview', function() { this.colorOption_.setAttribute('aria-hidden', disableColorOption); var setColorAsDefault = e.printerCapabilities.setColorAsDefault; - this.printerColorModelForColor_ = - e.printerCapabilities.printerColorModelForColor; + if (e.printerCapabilities.printerColorModelForColor) { + this.printerColorModelForColor_ = + e.printerCapabilities.printerColorModelForColor; + } else { + this.printerColorModelForColor_ = ColorSettings.COLOR; + } if (e.printerCapabilities.printerColorModelForBlack) { this.printerColorModelForBlack_ = e.printerCapabilities.printerColorModelForBlack; diff --git a/printing/print_job_constants.h b/printing/print_job_constants.h index 718a2b0..958b647 100644 --- a/printing/print_job_constants.h +++ b/printing/print_job_constants.h @@ -98,6 +98,7 @@ enum ColorModels { KCMY, CMY_K, // CMY_K represents CMY+K. BLACK, + GRAYSCALE, RGB, RGB16, RGBA, -- cgit v1.1