| OLD | NEW |
| 1 // Copyright 2016 The Chromium Authors. All rights reserved. | 1 // Copyright 2016 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "chrome/browser/ui/webui/settings/chromeos/cups_printers_handler.h" | 5 #include "chrome/browser/ui/webui/settings/chromeos/cups_printers_handler.h" |
| 6 | 6 |
| 7 #include <utility> | 7 #include <utility> |
| 8 | 8 |
| 9 #include "base/bind.h" | 9 #include "base/bind.h" |
| 10 #include "base/bind_helpers.h" | 10 #include "base/bind_helpers.h" |
| (...skipping 113 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 124 | 124 |
| 125 return queue; | 125 return queue; |
| 126 } | 126 } |
| 127 | 127 |
| 128 } // namespace | 128 } // namespace |
| 129 | 129 |
| 130 CupsPrintersHandler::CupsPrintersHandler(content::WebUI* webui) | 130 CupsPrintersHandler::CupsPrintersHandler(content::WebUI* webui) |
| 131 : printer_detector_(nullptr), | 131 : printer_detector_(nullptr), |
| 132 profile_(Profile::FromWebUI(webui)), | 132 profile_(Profile::FromWebUI(webui)), |
| 133 weak_factory_(this) { | 133 weak_factory_(this) { |
| 134 ppd_provider_ = printing::CreateProvider(profile_); | 134 ppd_provider_ = CreatePpdProvider(profile_); |
| 135 printer_configurer_ = PrinterConfigurer::Create(profile_); | 135 printer_configurer_ = PrinterConfigurer::Create(profile_); |
| 136 } | 136 } |
| 137 | 137 |
| 138 CupsPrintersHandler::~CupsPrintersHandler() {} | 138 CupsPrintersHandler::~CupsPrintersHandler() {} |
| 139 | 139 |
| 140 void CupsPrintersHandler::RegisterMessages() { | 140 void CupsPrintersHandler::RegisterMessages() { |
| 141 web_ui()->RegisterMessageCallback( | 141 web_ui()->RegisterMessageCallback( |
| 142 "getCupsPrintersList", | 142 "getCupsPrintersList", |
| 143 base::Bind(&CupsPrintersHandler::HandleGetCupsPrintersList, | 143 base::Bind(&CupsPrintersHandler::HandleGetCupsPrintersList, |
| 144 base::Unretained(this))); | 144 base::Unretained(this))); |
| (...skipping 364 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 509 chrome::FindBrowserWithWebContents(web_ui()->GetWebContents()) | 509 chrome::FindBrowserWithWebContents(web_ui()->GetWebContents()) |
| 510 ->window() | 510 ->window() |
| 511 ->GetNativeWindow(); | 511 ->GetNativeWindow(); |
| 512 select_file_dialog_->SelectFile( | 512 select_file_dialog_->SelectFile( |
| 513 ui::SelectFileDialog::SELECT_OPEN_FILE, base::string16(), downloads_path, | 513 ui::SelectFileDialog::SELECT_OPEN_FILE, base::string16(), downloads_path, |
| 514 nullptr, 0, FILE_PATH_LITERAL(""), owning_window, nullptr); | 514 nullptr, 0, FILE_PATH_LITERAL(""), owning_window, nullptr); |
| 515 } | 515 } |
| 516 | 516 |
| 517 void CupsPrintersHandler::ResolveManufacturersDone( | 517 void CupsPrintersHandler::ResolveManufacturersDone( |
| 518 const std::string& js_callback, | 518 const std::string& js_callback, |
| 519 printing::PpdProvider::CallbackResultCode result_code, | 519 PpdProvider::CallbackResultCode result_code, |
| 520 const std::vector<std::string>& manufacturers) { | 520 const std::vector<std::string>& manufacturers) { |
| 521 auto manufacturers_value = base::MakeUnique<base::ListValue>(); | 521 auto manufacturers_value = base::MakeUnique<base::ListValue>(); |
| 522 if (result_code == printing::PpdProvider::SUCCESS) { | 522 if (result_code == PpdProvider::SUCCESS) { |
| 523 manufacturers_value->AppendStrings(manufacturers); | 523 manufacturers_value->AppendStrings(manufacturers); |
| 524 } | 524 } |
| 525 base::DictionaryValue response; | 525 base::DictionaryValue response; |
| 526 response.SetBoolean("success", result_code == printing::PpdProvider::SUCCESS); | 526 response.SetBoolean("success", result_code == PpdProvider::SUCCESS); |
| 527 response.Set("manufacturers", std::move(manufacturers_value)); | 527 response.Set("manufacturers", std::move(manufacturers_value)); |
| 528 ResolveJavascriptCallback(base::Value(js_callback), response); | 528 ResolveJavascriptCallback(base::Value(js_callback), response); |
| 529 } | 529 } |
| 530 | 530 |
| 531 void CupsPrintersHandler::ResolvePrintersDone( | 531 void CupsPrintersHandler::ResolvePrintersDone( |
| 532 const std::string& js_callback, | 532 const std::string& js_callback, |
| 533 printing::PpdProvider::CallbackResultCode result_code, | 533 PpdProvider::CallbackResultCode result_code, |
| 534 const std::vector<std::string>& printers) { | 534 const std::vector<std::string>& printers) { |
| 535 auto printers_value = base::MakeUnique<base::ListValue>(); | 535 auto printers_value = base::MakeUnique<base::ListValue>(); |
| 536 if (result_code == printing::PpdProvider::SUCCESS) { | 536 if (result_code == PpdProvider::SUCCESS) { |
| 537 printers_value->AppendStrings(printers); | 537 printers_value->AppendStrings(printers); |
| 538 } | 538 } |
| 539 base::DictionaryValue response; | 539 base::DictionaryValue response; |
| 540 response.SetBoolean("success", result_code == printing::PpdProvider::SUCCESS); | 540 response.SetBoolean("success", result_code == PpdProvider::SUCCESS); |
| 541 response.Set("models", std::move(printers_value)); | 541 response.Set("models", std::move(printers_value)); |
| 542 ResolveJavascriptCallback(base::Value(js_callback), response); | 542 ResolveJavascriptCallback(base::Value(js_callback), response); |
| 543 } | 543 } |
| 544 | 544 |
| 545 void CupsPrintersHandler::FileSelected(const base::FilePath& path, | 545 void CupsPrintersHandler::FileSelected(const base::FilePath& path, |
| 546 int index, | 546 int index, |
| 547 void* params) { | 547 void* params) { |
| 548 DCHECK(!webui_callback_id_.empty()); | 548 DCHECK(!webui_callback_id_.empty()); |
| 549 ResolveJavascriptCallback(base::Value(webui_callback_id_), | 549 ResolveJavascriptCallback(base::Value(webui_callback_id_), |
| 550 base::Value(path.value())); | 550 base::Value(path.value())); |
| (...skipping 38 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 589 } | 589 } |
| 590 | 590 |
| 591 void CupsPrintersHandler::OnPrinterScanComplete() { | 591 void CupsPrintersHandler::OnPrinterScanComplete() { |
| 592 UMA_HISTOGRAM_COUNTS_100("Printing.CUPS.PrintersDiscovered", | 592 UMA_HISTOGRAM_COUNTS_100("Printing.CUPS.PrintersDiscovered", |
| 593 printer_detector_->GetPrinters().size()); | 593 printer_detector_->GetPrinters().size()); |
| 594 FireWebUIListener("on-printer-discovery-done"); | 594 FireWebUIListener("on-printer-discovery-done"); |
| 595 } | 595 } |
| 596 | 596 |
| 597 } // namespace settings | 597 } // namespace settings |
| 598 } // namespace chromeos | 598 } // namespace chromeos |
| OLD | NEW |