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