Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 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_handler.h" | 5 #include "chrome/browser/ui/webui/print_preview_handler.h" |
| 6 | 6 |
| 7 #include <string> | 7 #include <string> |
| 8 | 8 |
| 9 #include "base/base64.h" | 9 #include "base/base64.h" |
| 10 #if !defined(OS_CHROMEOS) | 10 #if !defined(OS_CHROMEOS) |
| (...skipping 414 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 425 web_ui_->RegisterMessageCallback("morePrinters", | 425 web_ui_->RegisterMessageCallback("morePrinters", |
| 426 NewCallback(this, &PrintPreviewHandler::HandleShowSystemDialog)); | 426 NewCallback(this, &PrintPreviewHandler::HandleShowSystemDialog)); |
| 427 web_ui_->RegisterMessageCallback("signIn", | 427 web_ui_->RegisterMessageCallback("signIn", |
| 428 NewCallback(this, &PrintPreviewHandler::HandleManageCloudPrint)); | 428 NewCallback(this, &PrintPreviewHandler::HandleManageCloudPrint)); |
| 429 web_ui_->RegisterMessageCallback("addCloudPrinter", | 429 web_ui_->RegisterMessageCallback("addCloudPrinter", |
| 430 NewCallback(this, &PrintPreviewHandler::HandleManageCloudPrint)); | 430 NewCallback(this, &PrintPreviewHandler::HandleManageCloudPrint)); |
| 431 web_ui_->RegisterMessageCallback("manageCloudPrinters", | 431 web_ui_->RegisterMessageCallback("manageCloudPrinters", |
| 432 NewCallback(this, &PrintPreviewHandler::HandleManageCloudPrint)); | 432 NewCallback(this, &PrintPreviewHandler::HandleManageCloudPrint)); |
| 433 web_ui_->RegisterMessageCallback("manageLocalPrinters", | 433 web_ui_->RegisterMessageCallback("manageLocalPrinters", |
| 434 NewCallback(this, &PrintPreviewHandler::HandleManagePrinters)); | 434 NewCallback(this, &PrintPreviewHandler::HandleManagePrinters)); |
| 435 web_ui_->RegisterMessageCallback("reloadCrashedInitiatorTab", | |
| 436 NewCallback(this, &PrintPreviewHandler::HandleReloadCrashedInitiatorTab)); | |
| 435 web_ui_->RegisterMessageCallback("closePrintPreviewTab", | 437 web_ui_->RegisterMessageCallback("closePrintPreviewTab", |
| 436 NewCallback(this, &PrintPreviewHandler::HandleClosePreviewTab)); | 438 NewCallback(this, &PrintPreviewHandler::HandleClosePreviewTab)); |
| 437 web_ui_->RegisterMessageCallback("hidePreview", | 439 web_ui_->RegisterMessageCallback("hidePreview", |
| 438 NewCallback(this, &PrintPreviewHandler::HandleHidePreview)); | 440 NewCallback(this, &PrintPreviewHandler::HandleHidePreview)); |
| 439 web_ui_->RegisterMessageCallback("cancelPendingPrintRequest", | 441 web_ui_->RegisterMessageCallback("cancelPendingPrintRequest", |
| 440 NewCallback(this, &PrintPreviewHandler::HandleCancelPendingPrintRequest)); | 442 NewCallback(this, &PrintPreviewHandler::HandleCancelPendingPrintRequest)); |
| 441 web_ui_->RegisterMessageCallback("saveLastPrinter", | 443 web_ui_->RegisterMessageCallback("saveLastPrinter", |
| 442 NewCallback(this, &PrintPreviewHandler::HandleSaveLastPrinter)); | 444 NewCallback(this, &PrintPreviewHandler::HandleSaveLastPrinter)); |
| 443 } | 445 } |
| 444 | 446 |
| (...skipping 199 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 644 printing::PrintViewManager* manager = wrapper->print_view_manager(); | 646 printing::PrintViewManager* manager = wrapper->print_view_manager(); |
| 645 manager->set_observer(this); | 647 manager->set_observer(this); |
| 646 manager->PrintForSystemDialogNow(); | 648 manager->PrintForSystemDialogNow(); |
| 647 } | 649 } |
| 648 | 650 |
| 649 void PrintPreviewHandler::HandleManagePrinters(const ListValue* args) { | 651 void PrintPreviewHandler::HandleManagePrinters(const ListValue* args) { |
| 650 ++manage_printers_dialog_request_count_; | 652 ++manage_printers_dialog_request_count_; |
| 651 printing::PrinterManagerDialog::ShowPrinterManagerDialog(); | 653 printing::PrinterManagerDialog::ShowPrinterManagerDialog(); |
| 652 } | 654 } |
| 653 | 655 |
| 656 void PrintPreviewHandler::HandleReloadCrashedInitiatorTab( | |
| 657 const ListValue* /* args */) { | |
|
Lei Zhang
2011/08/16 00:59:23
nit: just leave off /* args */ like we do in the r
kmadhusu
2011/08/16 01:31:37
Done.
| |
| 658 ReportStats(); | |
| 659 ReportUserActionHistogram(PREVIEW_FAILED); | |
|
Lei Zhang
2011/08/16 00:59:23
Can we use a different histogram value so we can d
kmadhusu
2011/08/16 01:31:37
+ INITIATOR_TAB_CRASHED
Once you are fine with th
| |
| 660 | |
| 661 TabContents* initiator_tab = GetInitiatorTab(); | |
| 662 if (!initiator_tab) | |
| 663 return; | |
| 664 | |
| 665 initiator_tab->OpenURL( | |
| 666 initiator_tab->GetURL(), GURL(), CURRENT_TAB, PageTransition::RELOAD); | |
| 667 ActivateInitiatorTabAndClosePreviewTab(); | |
| 668 } | |
| 669 | |
| 654 void PrintPreviewHandler::HandleClosePreviewTab(const ListValue* args) { | 670 void PrintPreviewHandler::HandleClosePreviewTab(const ListValue* args) { |
| 655 ReportStats(); | 671 ReportStats(); |
| 656 ReportUserActionHistogram(CANCEL); | 672 ReportUserActionHistogram(CANCEL); |
| 657 | 673 |
| 658 // Record the number of times the user requests to regenerate preview data | 674 // Record the number of times the user requests to regenerate preview data |
| 659 // before cancelling. | 675 // before cancelling. |
| 660 UMA_HISTOGRAM_COUNTS("PrintPreview.RegeneratePreviewRequest.BeforeCancel", | 676 UMA_HISTOGRAM_COUNTS("PrintPreview.RegeneratePreviewRequest.BeforeCancel", |
| 661 regenerate_preview_request_count_); | 677 regenerate_preview_request_count_); |
| 662 | 678 |
| 663 ActivateInitiatorTabAndClosePreviewTab(); | 679 ActivateInitiatorTabAndClosePreviewTab(); |
| (...skipping 159 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 823 string16(), | 839 string16(), |
| 824 last_saved_path_->Append(default_filename), | 840 last_saved_path_->Append(default_filename), |
| 825 &file_type_info, | 841 &file_type_info, |
| 826 0, | 842 0, |
| 827 FILE_PATH_LITERAL(""), | 843 FILE_PATH_LITERAL(""), |
| 828 preview_tab(), | 844 preview_tab(), |
| 829 platform_util::GetTopLevel(preview_tab()->GetNativeView()), | 845 platform_util::GetTopLevel(preview_tab()->GetNativeView()), |
| 830 NULL); | 846 NULL); |
| 831 } | 847 } |
| 832 | 848 |
| 833 void PrintPreviewHandler::OnNavigation() { | 849 void PrintPreviewHandler::OnTabDestroyed() { |
| 834 TabContents* initiator_tab = GetInitiatorTab(); | 850 TabContents* initiator_tab = GetInitiatorTab(); |
| 835 if (!initiator_tab) | 851 if (!initiator_tab) |
| 836 return; | 852 return; |
| 837 | 853 |
| 838 TabContentsWrapper* wrapper = | 854 TabContentsWrapper* wrapper = |
| 839 TabContentsWrapper::GetCurrentWrapperForContents(initiator_tab); | 855 TabContentsWrapper::GetCurrentWrapperForContents(initiator_tab); |
| 840 wrapper->print_view_manager()->set_observer(NULL); | 856 wrapper->print_view_manager()->set_observer(NULL); |
| 841 | 857 |
| 842 // Tell the initiator tab to stop rendering the print preview, if any, | 858 // Tell the initiator tab to stop rendering the print preview, if any, |
| 843 // since the preview tab is gone. | 859 // since the preview tab is gone. |
| (...skipping 43 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 887 return; | 903 return; |
| 888 | 904 |
| 889 // We no longer require the initiator tab details. Remove those details | 905 // We no longer require the initiator tab details. Remove those details |
| 890 // associated with the preview tab to allow the initiator tab to create | 906 // associated with the preview tab to allow the initiator tab to create |
| 891 // another preview tab. | 907 // another preview tab. |
| 892 printing::PrintPreviewTabController* tab_controller = | 908 printing::PrintPreviewTabController* tab_controller = |
| 893 printing::PrintPreviewTabController::GetInstance(); | 909 printing::PrintPreviewTabController::GetInstance(); |
| 894 if (tab_controller) | 910 if (tab_controller) |
| 895 tab_controller->EraseInitiatorTabInfo(preview_tab()); | 911 tab_controller->EraseInitiatorTabInfo(preview_tab()); |
| 896 } | 912 } |
| OLD | NEW |