Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(614)

Side by Side Diff: chrome/browser/ui/webui/print_preview/print_preview_handler.cc

Issue 2918243002: Change getExtensionPrinters to cr.sendWithPromise (Closed)
Patch Set: Move add listener into init Created 3 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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/print_preview/print_preview_handler.h" 5 #include "chrome/browser/ui/webui/print_preview/print_preview_handler.h"
6 6
7 #include <ctype.h> 7 #include <ctype.h>
8 #include <stddef.h> 8 #include <stddef.h>
9 9
10 #include <map> 10 #include <map>
(...skipping 691 matching lines...) Expand 10 before | Expand all | Expand 10 after
702 DCHECK(success); 702 DCHECK(success);
703 703
704 CreatePrivetHTTP( 704 CreatePrivetHTTP(
705 name, base::Bind(&PrintPreviewHandler::PrivetCapabilitiesUpdateClient, 705 name, base::Bind(&PrintPreviewHandler::PrivetCapabilitiesUpdateClient,
706 weak_factory_.GetWeakPtr())); 706 weak_factory_.GetWeakPtr()));
707 #endif 707 #endif
708 } 708 }
709 709
710 void PrintPreviewHandler::HandleGetExtensionPrinters( 710 void PrintPreviewHandler::HandleGetExtensionPrinters(
711 const base::ListValue* args) { 711 const base::ListValue* args) {
712 std::string callback_id;
713 CHECK(args->GetString(0, &callback_id));
714 CHECK(!callback_id.empty());
715
716 AllowJavascript();
712 EnsureExtensionPrinterHandlerSet(); 717 EnsureExtensionPrinterHandlerSet();
713 // Make sure all in progress requests are canceled before new printer search 718 // Make sure all in progress requests are canceled before new printer search
714 // starts. 719 // starts.
715 extension_printer_handler_->Reset(); 720 extension_printer_handler_->Reset();
716 extension_printer_handler_->StartGetPrinters( 721 extension_printer_handler_->StartGetPrinters(
717 base::Bind(&PrintPreviewHandler::OnGotPrintersForExtension, 722 base::Bind(&PrintPreviewHandler::OnGotPrintersForExtension,
718 weak_factory_.GetWeakPtr())); 723 weak_factory_.GetWeakPtr(), callback_id));
719 } 724 }
720 725
721 void PrintPreviewHandler::HandleGrantExtensionPrinterAccess( 726 void PrintPreviewHandler::HandleGrantExtensionPrinterAccess(
722 const base::ListValue* args) { 727 const base::ListValue* args) {
723 std::string printer_id; 728 std::string printer_id;
724 bool ok = args->GetString(0, &printer_id); 729 bool ok = args->GetString(0, &printer_id);
725 DCHECK(ok); 730 DCHECK(ok);
726 731
727 EnsureExtensionPrinterHandlerSet(); 732 EnsureExtensionPrinterHandlerSet();
728 extension_printer_handler_->StartGrantPrinterAccess( 733 extension_printer_handler_->StartGrantPrinterAccess(
(...skipping 999 matching lines...) Expand 10 before | Expand all | Expand 10 after
1728 1733
1729 void PrintPreviewHandler::EnsureExtensionPrinterHandlerSet() { 1734 void PrintPreviewHandler::EnsureExtensionPrinterHandlerSet() {
1730 if (extension_printer_handler_) 1735 if (extension_printer_handler_)
1731 return; 1736 return;
1732 1737
1733 extension_printer_handler_ = 1738 extension_printer_handler_ =
1734 PrinterHandler::CreateForExtensionPrinters(Profile::FromWebUI(web_ui())); 1739 PrinterHandler::CreateForExtensionPrinters(Profile::FromWebUI(web_ui()));
1735 } 1740 }
1736 1741
1737 void PrintPreviewHandler::OnGotPrintersForExtension( 1742 void PrintPreviewHandler::OnGotPrintersForExtension(
1743 const std::string& callback_id,
1738 const base::ListValue& printers, 1744 const base::ListValue& printers,
1739 bool done) { 1745 bool done) {
1740 web_ui()->CallJavascriptFunctionUnsafe("onExtensionPrintersAdded", printers, 1746 AllowJavascript();
1741 base::Value(done)); 1747
1748 FireWebUIListener("extension-printers-added", printers);
1749 if (done) {
1750 ResolveJavascriptCallback(base::Value(callback_id), base::Value(true));
dpapad 2017/06/07 03:20:11 Is the boolean passed here needed? It seems that w
rbpotter 2017/06/07 03:46:42 Done.
1751 }
1742 } 1752 }
1743 1753
1744 void PrintPreviewHandler::OnGotExtensionPrinterInfo( 1754 void PrintPreviewHandler::OnGotExtensionPrinterInfo(
1745 const std::string& printer_id, 1755 const std::string& printer_id,
1746 const base::DictionaryValue& printer_info) { 1756 const base::DictionaryValue& printer_info) {
1747 if (printer_info.empty()) { 1757 if (printer_info.empty()) {
1748 web_ui()->CallJavascriptFunctionUnsafe("failedToResolveProvisionalPrinter", 1758 web_ui()->CallJavascriptFunctionUnsafe("failedToResolveProvisionalPrinter",
1749 base::Value(printer_id)); 1759 base::Value(printer_id));
1750 return; 1760 return;
1751 } 1761 }
(...skipping 42 matching lines...) Expand 10 before | Expand all | Expand 10 after
1794 1804
1795 void PrintPreviewHandler::UnregisterForGaiaCookieChanges() { 1805 void PrintPreviewHandler::UnregisterForGaiaCookieChanges() {
1796 if (gaia_cookie_manager_service_) 1806 if (gaia_cookie_manager_service_)
1797 gaia_cookie_manager_service_->RemoveObserver(this); 1807 gaia_cookie_manager_service_->RemoveObserver(this);
1798 } 1808 }
1799 1809
1800 void PrintPreviewHandler::SetPdfSavedClosureForTesting( 1810 void PrintPreviewHandler::SetPdfSavedClosureForTesting(
1801 const base::Closure& closure) { 1811 const base::Closure& closure) {
1802 pdf_file_saved_closure_ = closure; 1812 pdf_file_saved_closure_ = closure;
1803 } 1813 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698