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 |