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 #include <stddef.h> | 8 #include <stddef.h> |
9 | 9 |
10 #include <map> | 10 #include <map> |
(...skipping 1155 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
1166 base::Value(printer_name)); | 1166 base::Value(printer_name)); |
1167 return; | 1167 return; |
1168 } | 1168 } |
1169 | 1169 |
1170 printer_backend_proxy()->ConfigurePrinterAndFetchCapabilities( | 1170 printer_backend_proxy()->ConfigurePrinterAndFetchCapabilities( |
1171 printer_name, | 1171 printer_name, |
1172 base::Bind(&PrintPreviewHandler::SendPrinterSetup, | 1172 base::Bind(&PrintPreviewHandler::SendPrinterSetup, |
1173 weak_factory_.GetWeakPtr(), callback_id, printer_name)); | 1173 weak_factory_.GetWeakPtr(), callback_id, printer_name)); |
1174 } | 1174 } |
1175 | 1175 |
1176 void PrintPreviewHandler::OnSigninComplete() { | 1176 void PrintPreviewHandler::OnSigninComplete(const std::string& callback_id) { |
1177 if (print_preview_ui()) | 1177 ResolveJavascriptCallback(base::Value(callback_id), base::Value()); |
1178 print_preview_ui()->OnReloadPrintersList(); | |
1179 } | 1178 } |
1180 | 1179 |
1181 void PrintPreviewHandler::HandleSignin(const base::ListValue* args) { | 1180 void PrintPreviewHandler::HandleSignin(const base::ListValue* args) { |
1181 std::string callback_id; | |
1182 bool add_account = false; | 1182 bool add_account = false; |
1183 bool success = args->GetBoolean(0, &add_account); | 1183 bool success = args->GetString(0, &callback_id); |
dpapad
2017/07/07 21:12:41
Nit (optional): Do we need the temp |success| vari
rbpotter
2017/07/07 23:58:39
Done.
| |
1184 DCHECK(success); | 1184 CHECK(success); |
1185 CHECK(!callback_id.empty()); | |
1186 success = args->GetBoolean(1, &add_account); | |
1187 CHECK(success); | |
1185 | 1188 |
1186 Profile* profile = Profile::FromBrowserContext( | 1189 Profile* profile = Profile::FromBrowserContext( |
1187 preview_web_contents()->GetBrowserContext()); | 1190 preview_web_contents()->GetBrowserContext()); |
1188 chrome::ScopedTabbedBrowserDisplayer displayer(profile); | 1191 chrome::ScopedTabbedBrowserDisplayer displayer(profile); |
1189 print_dialog_cloud::CreateCloudPrintSigninTab( | 1192 print_dialog_cloud::CreateCloudPrintSigninTab( |
1190 displayer.browser(), | 1193 displayer.browser(), add_account, |
1191 add_account, | |
1192 base::Bind(&PrintPreviewHandler::OnSigninComplete, | 1194 base::Bind(&PrintPreviewHandler::OnSigninComplete, |
1193 weak_factory_.GetWeakPtr())); | 1195 weak_factory_.GetWeakPtr(), callback_id)); |
1194 } | 1196 } |
1195 | 1197 |
1196 void PrintPreviewHandler::HandleGetAccessToken(const base::ListValue* args) { | 1198 void PrintPreviewHandler::HandleGetAccessToken(const base::ListValue* args) { |
1197 std::string callback_id; | 1199 std::string callback_id; |
1198 std::string type; | 1200 std::string type; |
1199 | 1201 |
1200 bool ok = args->GetString(0, &callback_id) && args->GetString(1, &type) && | 1202 bool ok = args->GetString(0, &callback_id) && args->GetString(1, &type) && |
1201 !callback_id.empty(); | 1203 !callback_id.empty(); |
1202 DCHECK(ok); | 1204 DCHECK(ok); |
1203 | 1205 |
(...skipping 249 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
1453 printing::PrintPreviewDialogController* dialog_controller = | 1455 printing::PrintPreviewDialogController* dialog_controller = |
1454 printing::PrintPreviewDialogController::GetInstance(); | 1456 printing::PrintPreviewDialogController::GetInstance(); |
1455 if (!dialog_controller) | 1457 if (!dialog_controller) |
1456 return NULL; | 1458 return NULL; |
1457 return dialog_controller->GetInitiator(preview_web_contents()); | 1459 return dialog_controller->GetInitiator(preview_web_contents()); |
1458 } | 1460 } |
1459 | 1461 |
1460 void PrintPreviewHandler::OnAddAccountToCookieCompleted( | 1462 void PrintPreviewHandler::OnAddAccountToCookieCompleted( |
1461 const std::string& account_id, | 1463 const std::string& account_id, |
1462 const GoogleServiceAuthError& error) { | 1464 const GoogleServiceAuthError& error) { |
1463 OnSigninComplete(); | 1465 FireWebUIListener("reload-printer-list"); |
1464 } | 1466 } |
1465 | 1467 |
1466 void PrintPreviewHandler::SelectFile(const base::FilePath& default_filename, | 1468 void PrintPreviewHandler::SelectFile(const base::FilePath& default_filename, |
1467 bool prompt_user) { | 1469 bool prompt_user) { |
1468 if (prompt_user) { | 1470 if (prompt_user) { |
1469 ChromeSelectFilePolicy policy(GetInitiator()); | 1471 ChromeSelectFilePolicy policy(GetInitiator()); |
1470 if (!policy.CanOpenSelectFileDialog()) { | 1472 if (!policy.CanOpenSelectFileDialog()) { |
1471 policy.SelectFileDenied(); | 1473 policy.SelectFileDenied(); |
1472 RejectJavascriptCallback(base::Value(pdf_callback_id_), base::Value()); | 1474 RejectJavascriptCallback(base::Value(pdf_callback_id_), base::Value()); |
1473 pdf_callback_id_.clear(); | 1475 pdf_callback_id_.clear(); |
(...skipping 76 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
1550 preview_callbacks_.pop(); | 1552 preview_callbacks_.pop(); |
1551 } | 1553 } |
1552 | 1554 |
1553 void PrintPreviewHandler::OnInvalidPrinterSettings() { | 1555 void PrintPreviewHandler::OnInvalidPrinterSettings() { |
1554 CHECK(!preview_callbacks_.empty()); | 1556 CHECK(!preview_callbacks_.empty()); |
1555 RejectJavascriptCallback(base::Value(preview_callbacks_.front()), | 1557 RejectJavascriptCallback(base::Value(preview_callbacks_.front()), |
1556 base::Value("SETTINGS_INVALID")); | 1558 base::Value("SETTINGS_INVALID")); |
1557 preview_callbacks_.pop(); | 1559 preview_callbacks_.pop(); |
1558 } | 1560 } |
1559 | 1561 |
1562 void PrintPreviewHandler::SendPrintPresetOptions(bool disable_scaling, | |
1563 int copies, | |
1564 int duplex) { | |
1565 FireWebUIListener("print-preset-options", base::Value(disable_scaling), | |
1566 base::Value(copies), base::Value(duplex)); | |
1567 } | |
1568 | |
1569 void PrintPreviewHandler::SendPageCountReady(int page_count, | |
1570 int request_id, | |
1571 int fit_to_page_scaling) { | |
1572 FireWebUIListener("page-count-ready", base::Value(page_count), | |
1573 base::Value(request_id), base::Value(fit_to_page_scaling)); | |
1574 } | |
1575 | |
1576 void PrintPreviewHandler::SendPageLayoutReady( | |
1577 const base::DictionaryValue& layout, | |
1578 bool has_custom_page_size_style) { | |
1579 FireWebUIListener("page-layout-ready", layout, | |
1580 base::Value(has_custom_page_size_style)); | |
1581 } | |
1582 | |
1583 void PrintPreviewHandler::SendPagePreviewReady(int page_index, | |
1584 int preview_uid, | |
1585 int preview_response_id) { | |
1586 FireWebUIListener("page-preview-ready", base::Value(page_index), | |
1587 base::Value(preview_uid), base::Value(preview_response_id)); | |
1588 } | |
1589 | |
1560 void PrintPreviewHandler::OnPrintPreviewCancelled() { | 1590 void PrintPreviewHandler::OnPrintPreviewCancelled() { |
1561 CHECK(!preview_callbacks_.empty()); | 1591 CHECK(!preview_callbacks_.empty()); |
1562 RejectJavascriptCallback(base::Value(preview_callbacks_.front()), | 1592 RejectJavascriptCallback(base::Value(preview_callbacks_.front()), |
1563 base::Value("CANCELLED")); | 1593 base::Value("CANCELLED")); |
1564 preview_callbacks_.pop(); | 1594 preview_callbacks_.pop(); |
1565 } | 1595 } |
1566 | 1596 |
1567 #if BUILDFLAG(ENABLE_BASIC_PRINT_DIALOG) | 1597 #if BUILDFLAG(ENABLE_BASIC_PRINT_DIALOG) |
1568 void PrintPreviewHandler::ShowSystemDialog() { | 1598 void PrintPreviewHandler::ShowSystemDialog() { |
1569 HandleShowSystemDialog(NULL); | 1599 HandleShowSystemDialog(NULL); |
(...skipping 352 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
1922 | 1952 |
1923 void PrintPreviewHandler::UnregisterForGaiaCookieChanges() { | 1953 void PrintPreviewHandler::UnregisterForGaiaCookieChanges() { |
1924 if (gaia_cookie_manager_service_) | 1954 if (gaia_cookie_manager_service_) |
1925 gaia_cookie_manager_service_->RemoveObserver(this); | 1955 gaia_cookie_manager_service_->RemoveObserver(this); |
1926 } | 1956 } |
1927 | 1957 |
1928 void PrintPreviewHandler::SetPdfSavedClosureForTesting( | 1958 void PrintPreviewHandler::SetPdfSavedClosureForTesting( |
1929 const base::Closure& closure) { | 1959 const base::Closure& closure) { |
1930 pdf_file_saved_closure_ = closure; | 1960 pdf_file_saved_closure_ = closure; |
1931 } | 1961 } |
OLD | NEW |