| OLD | NEW |
| 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 | 8 |
| 9 #include <map> | 9 #include <map> |
| 10 #include <string> | 10 #include <string> |
| (...skipping 734 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 745 EnsureExtensionPrinterHandlerSet(); | 745 EnsureExtensionPrinterHandlerSet(); |
| 746 // Make sure all in progress requests are canceled before new printer search | 746 // Make sure all in progress requests are canceled before new printer search |
| 747 // starts. | 747 // starts. |
| 748 extension_printer_handler_->Reset(); | 748 extension_printer_handler_->Reset(); |
| 749 extension_printer_handler_->StartGetPrinters(base::Bind( | 749 extension_printer_handler_->StartGetPrinters(base::Bind( |
| 750 &PrintPreviewHandler::OnGotPrintersForExtension, base::Unretained(this))); | 750 &PrintPreviewHandler::OnGotPrintersForExtension, base::Unretained(this))); |
| 751 } | 751 } |
| 752 | 752 |
| 753 void PrintPreviewHandler::HandleGrantExtensionUsbPrinterAccess( | 753 void PrintPreviewHandler::HandleGrantExtensionUsbPrinterAccess( |
| 754 const base::ListValue* args) { | 754 const base::ListValue* args) { |
| 755 std::string provisional_destination_id; |
| 756 bool ok = args->GetString(0, &provisional_destination_id); |
| 757 DCHECK(ok); |
| 755 std::string extension_id; | 758 std::string extension_id; |
| 756 bool ok = args->GetString(0, &extension_id); | 759 ok = args->GetString(1, &extension_id); |
| 757 DCHECK(ok); | 760 DCHECK(ok); |
| 758 int device_id; | 761 int device_id; |
| 759 ok = args->GetInteger(1, &device_id); | 762 ok = args->GetInteger(2, &device_id); |
| 760 DCHECK(ok); | 763 DCHECK(ok); |
| 761 | 764 |
| 762 EnsureExtensionPrinterHandlerSet(); | 765 EnsureExtensionPrinterHandlerSet(); |
| 763 extension_printer_handler_->StartGrantUsbPrinterAccess( | 766 extension_printer_handler_->StartGrantUsbPrinterAccess( |
| 764 extension_id, device_id, | 767 extension_id, device_id, |
| 765 base::Bind(&PrintPreviewHandler::OnGotExtensionUsbPrinterInfo, | 768 base::Bind(&PrintPreviewHandler::OnGotExtensionUsbPrinterInfo, |
| 766 base::Unretained(this), extension_id, device_id)); | 769 base::Unretained(this), provisional_destination_id)); |
| 767 } | 770 } |
| 768 | 771 |
| 769 void PrintPreviewHandler::HandleGetExtensionPrinterCapabilities( | 772 void PrintPreviewHandler::HandleGetExtensionPrinterCapabilities( |
| 770 const base::ListValue* args) { | 773 const base::ListValue* args) { |
| 771 std::string printer_id; | 774 std::string printer_id; |
| 772 bool ok = args->GetString(0, &printer_id); | 775 bool ok = args->GetString(0, &printer_id); |
| 773 DCHECK(ok); | 776 DCHECK(ok); |
| 774 | 777 |
| 775 EnsureExtensionPrinterHandlerSet(); | 778 EnsureExtensionPrinterHandlerSet(); |
| 776 extension_printer_handler_->StartGetCapability( | 779 extension_printer_handler_->StartGetCapability( |
| (...skipping 935 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1712 } | 1715 } |
| 1713 | 1716 |
| 1714 void PrintPreviewHandler::OnGotPrintersForExtension( | 1717 void PrintPreviewHandler::OnGotPrintersForExtension( |
| 1715 const base::ListValue& printers, | 1718 const base::ListValue& printers, |
| 1716 bool done) { | 1719 bool done) { |
| 1717 web_ui()->CallJavascriptFunction("onExtensionPrintersAdded", printers, | 1720 web_ui()->CallJavascriptFunction("onExtensionPrintersAdded", printers, |
| 1718 base::FundamentalValue(done)); | 1721 base::FundamentalValue(done)); |
| 1719 } | 1722 } |
| 1720 | 1723 |
| 1721 void PrintPreviewHandler::OnGotExtensionUsbPrinterInfo( | 1724 void PrintPreviewHandler::OnGotExtensionUsbPrinterInfo( |
| 1722 const std::string& extension_id, | 1725 const std::string& provisional_destination_id, |
| 1723 int device_id, | |
| 1724 const base::DictionaryValue& printer_info) { | 1726 const base::DictionaryValue& printer_info) { |
| 1725 if (printer_info.empty()) { | 1727 if (printer_info.empty()) { |
| 1726 web_ui()->CallJavascriptFunction("failedToGetExtensionUsbPrinterInfo", | 1728 web_ui()->CallJavascriptFunction( |
| 1727 base::StringValue(extension_id), | 1729 "failedToResolveProvisionalDestination", |
| 1728 base::FundamentalValue(device_id)); | 1730 base::StringValue(provisional_destination_id)); |
| 1729 return; | 1731 return; |
| 1730 } | 1732 } |
| 1731 | 1733 |
| 1732 web_ui()->CallJavascriptFunction("onExtensionUsbPrinterAdded", printer_info); | 1734 web_ui()->CallJavascriptFunction( |
| 1735 "onProvisionalDestinationResolved", |
| 1736 base::StringValue(provisional_destination_id), |
| 1737 printer_info); |
| 1733 } | 1738 } |
| 1734 | 1739 |
| 1735 void PrintPreviewHandler::OnGotExtensionPrinterCapabilities( | 1740 void PrintPreviewHandler::OnGotExtensionPrinterCapabilities( |
| 1736 const std::string& printer_id, | 1741 const std::string& printer_id, |
| 1737 const base::DictionaryValue& capabilities) { | 1742 const base::DictionaryValue& capabilities) { |
| 1738 if (capabilities.empty()) { | 1743 if (capabilities.empty()) { |
| 1739 web_ui()->CallJavascriptFunction("failedToGetExtensionPrinterCapabilities", | 1744 web_ui()->CallJavascriptFunction("failedToGetExtensionPrinterCapabilities", |
| 1740 base::StringValue(printer_id)); | 1745 base::StringValue(printer_id)); |
| 1741 return; | 1746 return; |
| 1742 } | 1747 } |
| (...skipping 28 matching lines...) Expand all Loading... |
| 1771 | 1776 |
| 1772 void PrintPreviewHandler::UnregisterForGaiaCookieChanges() { | 1777 void PrintPreviewHandler::UnregisterForGaiaCookieChanges() { |
| 1773 if (gaia_cookie_manager_service_) | 1778 if (gaia_cookie_manager_service_) |
| 1774 gaia_cookie_manager_service_->RemoveObserver(this); | 1779 gaia_cookie_manager_service_->RemoveObserver(this); |
| 1775 } | 1780 } |
| 1776 | 1781 |
| 1777 void PrintPreviewHandler::SetPdfSavedClosureForTesting( | 1782 void PrintPreviewHandler::SetPdfSavedClosureForTesting( |
| 1778 const base::Closure& closure) { | 1783 const base::Closure& closure) { |
| 1779 pdf_file_saved_closure_ = closure; | 1784 pdf_file_saved_closure_ = closure; |
| 1780 } | 1785 } |
| OLD | NEW |