| 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 548 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 559 base::Unretained(this))); | 559 base::Unretained(this))); |
| 560 web_ui()->RegisterMessageCallback("getPreview", | 560 web_ui()->RegisterMessageCallback("getPreview", |
| 561 base::Bind(&PrintPreviewHandler::HandleGetPreview, | 561 base::Bind(&PrintPreviewHandler::HandleGetPreview, |
| 562 base::Unretained(this))); | 562 base::Unretained(this))); |
| 563 web_ui()->RegisterMessageCallback("print", | 563 web_ui()->RegisterMessageCallback("print", |
| 564 base::Bind(&PrintPreviewHandler::HandlePrint, | 564 base::Bind(&PrintPreviewHandler::HandlePrint, |
| 565 base::Unretained(this))); | 565 base::Unretained(this))); |
| 566 web_ui()->RegisterMessageCallback("getPrinterCapabilities", | 566 web_ui()->RegisterMessageCallback("getPrinterCapabilities", |
| 567 base::Bind(&PrintPreviewHandler::HandleGetPrinterCapabilities, | 567 base::Bind(&PrintPreviewHandler::HandleGetPrinterCapabilities, |
| 568 base::Unretained(this))); | 568 base::Unretained(this))); |
| 569 #if !defined(DISABLE_BASIC_PRINTING) |
| 569 web_ui()->RegisterMessageCallback("showSystemDialog", | 570 web_ui()->RegisterMessageCallback("showSystemDialog", |
| 570 base::Bind(&PrintPreviewHandler::HandleShowSystemDialog, | 571 base::Bind(&PrintPreviewHandler::HandleShowSystemDialog, |
| 571 base::Unretained(this))); | 572 base::Unretained(this))); |
| 573 #endif // !DISABLE_BASIC_PRINTING |
| 572 web_ui()->RegisterMessageCallback("signIn", | 574 web_ui()->RegisterMessageCallback("signIn", |
| 573 base::Bind(&PrintPreviewHandler::HandleSignin, | 575 base::Bind(&PrintPreviewHandler::HandleSignin, |
| 574 base::Unretained(this))); | 576 base::Unretained(this))); |
| 575 web_ui()->RegisterMessageCallback("getAccessToken", | 577 web_ui()->RegisterMessageCallback("getAccessToken", |
| 576 base::Bind(&PrintPreviewHandler::HandleGetAccessToken, | 578 base::Bind(&PrintPreviewHandler::HandleGetAccessToken, |
| 577 base::Unretained(this))); | 579 base::Unretained(this))); |
| 578 web_ui()->RegisterMessageCallback("manageCloudPrinters", | 580 web_ui()->RegisterMessageCallback("manageCloudPrinters", |
| 579 base::Bind(&PrintPreviewHandler::HandleManageCloudPrint, | 581 base::Bind(&PrintPreviewHandler::HandleManageCloudPrint, |
| 580 base::Unretained(this))); | 582 base::Unretained(this))); |
| 581 web_ui()->RegisterMessageCallback("manageLocalPrinters", | 583 web_ui()->RegisterMessageCallback("manageLocalPrinters", |
| (...skipping 433 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1015 const base::ListValue* /*args*/) { | 1017 const base::ListValue* /*args*/) { |
| 1016 ++manage_cloud_printers_dialog_request_count_; | 1018 ++manage_cloud_printers_dialog_request_count_; |
| 1017 preview_web_contents()->OpenURL(content::OpenURLParams( | 1019 preview_web_contents()->OpenURL(content::OpenURLParams( |
| 1018 cloud_devices::GetCloudPrintRelativeURL("manage.html"), | 1020 cloud_devices::GetCloudPrintRelativeURL("manage.html"), |
| 1019 content::Referrer(), | 1021 content::Referrer(), |
| 1020 NEW_FOREGROUND_TAB, | 1022 NEW_FOREGROUND_TAB, |
| 1021 content::PAGE_TRANSITION_LINK, | 1023 content::PAGE_TRANSITION_LINK, |
| 1022 false)); | 1024 false)); |
| 1023 } | 1025 } |
| 1024 | 1026 |
| 1027 #if !defined(DISABLE_BASIC_PRINTING) |
| 1025 void PrintPreviewHandler::HandleShowSystemDialog( | 1028 void PrintPreviewHandler::HandleShowSystemDialog( |
| 1026 const base::ListValue* /*args*/) { | 1029 const base::ListValue* /*args*/) { |
| 1027 ReportStats(); | 1030 ReportStats(); |
| 1028 ReportUserActionHistogram(FALLBACK_TO_ADVANCED_SETTINGS_DIALOG); | 1031 ReportUserActionHistogram(FALLBACK_TO_ADVANCED_SETTINGS_DIALOG); |
| 1029 | 1032 |
| 1030 WebContents* initiator = GetInitiator(); | 1033 WebContents* initiator = GetInitiator(); |
| 1031 if (!initiator) | 1034 if (!initiator) |
| 1032 return; | 1035 return; |
| 1033 | 1036 |
| 1034 printing::PrintViewManager* print_view_manager = | 1037 printing::PrintViewManager* print_view_manager = |
| 1035 printing::PrintViewManager::FromWebContents(initiator); | 1038 printing::PrintViewManager::FromWebContents(initiator); |
| 1036 print_view_manager->set_observer(this); | 1039 print_view_manager->set_observer(this); |
| 1037 print_view_manager->PrintForSystemDialogNow(); | 1040 print_view_manager->PrintForSystemDialogNow(); |
| 1038 | 1041 |
| 1039 // Cancel the pending preview request if exists. | 1042 // Cancel the pending preview request if exists. |
| 1040 PrintPreviewUI* print_preview_ui = | 1043 PrintPreviewUI* print_preview_ui = |
| 1041 static_cast<PrintPreviewUI*>(web_ui()->GetController()); | 1044 static_cast<PrintPreviewUI*>(web_ui()->GetController()); |
| 1042 print_preview_ui->OnCancelPendingPreviewRequest(); | 1045 print_preview_ui->OnCancelPendingPreviewRequest(); |
| 1043 } | 1046 } |
| 1047 #endif // !DISABLE_BASIC_PRINTING |
| 1044 | 1048 |
| 1045 void PrintPreviewHandler::HandleManagePrinters( | 1049 void PrintPreviewHandler::HandleManagePrinters( |
| 1046 const base::ListValue* /*args*/) { | 1050 const base::ListValue* /*args*/) { |
| 1047 ++manage_printers_dialog_request_count_; | 1051 ++manage_printers_dialog_request_count_; |
| 1048 printing::PrinterManagerDialog::ShowPrinterManagerDialog(); | 1052 printing::PrinterManagerDialog::ShowPrinterManagerDialog(); |
| 1049 } | 1053 } |
| 1050 | 1054 |
| 1051 void PrintPreviewHandler::HandlePrintWithCloudPrintDialog( | 1055 void PrintPreviewHandler::HandlePrintWithCloudPrintDialog( |
| 1052 const base::ListValue* args) { | 1056 const base::ListValue* args) { |
| 1053 int page_count = 0; | 1057 int page_count = 0; |
| (...skipping 225 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1279 print_view_manager->set_observer(NULL); | 1283 print_view_manager->set_observer(NULL); |
| 1280 } | 1284 } |
| 1281 | 1285 |
| 1282 void PrintPreviewHandler::OnPrintPreviewFailed() { | 1286 void PrintPreviewHandler::OnPrintPreviewFailed() { |
| 1283 if (reported_failed_preview_) | 1287 if (reported_failed_preview_) |
| 1284 return; | 1288 return; |
| 1285 reported_failed_preview_ = true; | 1289 reported_failed_preview_ = true; |
| 1286 ReportUserActionHistogram(PREVIEW_FAILED); | 1290 ReportUserActionHistogram(PREVIEW_FAILED); |
| 1287 } | 1291 } |
| 1288 | 1292 |
| 1293 #if !defined(DISABLE_BASIC_PRINTING) |
| 1289 void PrintPreviewHandler::ShowSystemDialog() { | 1294 void PrintPreviewHandler::ShowSystemDialog() { |
| 1290 HandleShowSystemDialog(NULL); | 1295 HandleShowSystemDialog(NULL); |
| 1291 } | 1296 } |
| 1297 #endif // !DISABLE_BASIC_PRINTING |
| 1292 | 1298 |
| 1293 void PrintPreviewHandler::FileSelected(const base::FilePath& path, | 1299 void PrintPreviewHandler::FileSelected(const base::FilePath& path, |
| 1294 int index, void* params) { | 1300 int index, void* params) { |
| 1295 // Updating |save_path_| to the newly selected folder. | 1301 // Updating |save_path_| to the newly selected folder. |
| 1296 printing::StickySettings* sticky_settings = GetStickySettings(); | 1302 printing::StickySettings* sticky_settings = GetStickySettings(); |
| 1297 sticky_settings->StoreSavePath(path.DirName()); | 1303 sticky_settings->StoreSavePath(path.DirName()); |
| 1298 sticky_settings->SaveInPrefs(Profile::FromBrowserContext( | 1304 sticky_settings->SaveInPrefs(Profile::FromBrowserContext( |
| 1299 preview_web_contents()->GetBrowserContext())->GetPrefs()); | 1305 preview_web_contents()->GetBrowserContext())->GetPrefs()); |
| 1300 web_ui()->CallJavascriptFunction("fileSelectionCompleted"); | 1306 web_ui()->CallJavascriptFunction("fileSelectionCompleted"); |
| 1301 print_to_pdf_path_ = path; | 1307 print_to_pdf_path_ = path; |
| (...skipping 287 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1589 | 1595 |
| 1590 void PrintPreviewHandler::UnregisterForMergeSession() { | 1596 void PrintPreviewHandler::UnregisterForMergeSession() { |
| 1591 if (reconcilor_) | 1597 if (reconcilor_) |
| 1592 reconcilor_->RemoveMergeSessionObserver(this); | 1598 reconcilor_->RemoveMergeSessionObserver(this); |
| 1593 } | 1599 } |
| 1594 | 1600 |
| 1595 void PrintPreviewHandler::SetPdfSavedClosureForTesting( | 1601 void PrintPreviewHandler::SetPdfSavedClosureForTesting( |
| 1596 const base::Closure& closure) { | 1602 const base::Closure& closure) { |
| 1597 pdf_file_saved_closure_ = closure; | 1603 pdf_file_saved_closure_ = closure; |
| 1598 } | 1604 } |
| OLD | NEW |