| Index: printing/backend/print_backend_chromeos.cc
|
| diff --git a/printing/backend/print_backend_chromeos.cc b/printing/backend/print_backend_chromeos.cc
|
| index f32bbe1e865cd28656aaa9bc65550af4c7f0a173..35f51b7ec6085e53069e76f3ad61971fe4009a1a 100644
|
| --- a/printing/backend/print_backend_chromeos.cc
|
| +++ b/printing/backend/print_backend_chromeos.cc
|
| @@ -5,6 +5,13 @@
|
| #include "printing/backend/print_backend.h"
|
|
|
| #include "base/logging.h"
|
| +#include "base/values.h"
|
| +#include "printing/backend/print_backend_consts.h"
|
| +#include "url/gurl.h"
|
| +
|
| +#if defined(USE_CUPS)
|
| +#include "printing/backend/print_backend_cups.h"
|
| +#endif // defined(USE_CUPS)
|
|
|
| namespace printing {
|
|
|
| @@ -72,8 +79,27 @@ bool PrintBackendChromeOS::IsValidPrinter(const std::string& printer_name) {
|
|
|
| scoped_refptr<PrintBackend> PrintBackend::CreateInstance(
|
| const base::DictionaryValue* print_backend_settings) {
|
| + if (GetNativeCupsEnabled()) {
|
| +#if defined(USE_CUPS)
|
| + std::string print_server_url_str;
|
| + std::string cups_blocking;
|
| + int encryption = HTTP_ENCRYPT_NEVER;
|
| + if (print_backend_settings) {
|
| + print_backend_settings->GetString(kCUPSPrintServerURL,
|
| + &print_server_url_str);
|
| +
|
| + print_backend_settings->GetString(kCUPSBlocking, &cups_blocking);
|
| +
|
| + print_backend_settings->GetInteger(kCUPSEncryption, &encryption);
|
| + }
|
| + GURL print_server_url(print_server_url_str.c_str());
|
| + return new PrintBackendCUPS(print_server_url,
|
| + static_cast<http_encryption_t>(encryption),
|
| + cups_blocking == kValueTrue);
|
| +#endif // defined(USE_CUPS)
|
| + }
|
| +
|
| return new PrintBackendChromeOS();
|
| }
|
|
|
| } // namespace printing
|
| -
|
|
|