diff options
author | kmadhusu@chromium.org <kmadhusu@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-08-26 17:59:01 +0000 |
---|---|---|
committer | kmadhusu@chromium.org <kmadhusu@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-08-26 17:59:01 +0000 |
commit | 0996e9bc586a81931048ac78c8b8200914320a80 (patch) | |
tree | 4bd3e4ac4539262c6efbed7cde6390b46628d944 /chrome/browser/printing/print_view_manager.cc | |
parent | 7e52ea6b9fef37ceb75f55ec6a1485d107889d0b (diff) | |
download | chromium_src-0996e9bc586a81931048ac78c8b8200914320a80.zip chromium_src-0996e9bc586a81931048ac78c8b8200914320a80.tar.gz chromium_src-0996e9bc586a81931048ac78c8b8200914320a80.tar.bz2 |
PrintPreview: Make ctrl-shift-p start the native print flow.
+ Added PrintPreviewUITest.AdvancedPrintCommandEnabled
BUG=93819
TEST=Open a tab. Press ctrl+shift+p to start native print workflow.
Review URL: http://codereview.chromium.org/7721001
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@98450 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/printing/print_view_manager.cc')
-rw-r--r-- | chrome/browser/printing/print_view_manager.cc | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/chrome/browser/printing/print_view_manager.cc b/chrome/browser/printing/print_view_manager.cc index c9b8767..b86573f 100644 --- a/chrome/browser/printing/print_view_manager.cc +++ b/chrome/browser/printing/print_view_manager.cc @@ -88,6 +88,26 @@ bool PrintViewManager::PrintForSystemDialogNow() { return PrintNowInternal(new PrintMsg_PrintForSystemDialog(routing_id())); } +bool PrintViewManager::AdvancedPrintNow() { + printing::PrintPreviewTabController* tab_controller = + printing::PrintPreviewTabController::GetInstance(); + if (!tab_controller) + return false; + TabContents* print_preview_tab = + tab_controller->GetPrintPreviewForTab(tab_contents()); + if (print_preview_tab) { + // Preview tab exist for current tab or current tab is preview tab. + if (!print_preview_tab->web_ui()) + return false; + PrintPreviewUI* print_preview_ui = + static_cast<PrintPreviewUI*>(print_preview_tab->web_ui()); + print_preview_ui->OnShowSystemDialog(); + return true; + } else { + return PrintNow(); + } +} + bool PrintViewManager::PrintPreviewNow() { return PrintNowInternal(new PrintMsg_InitiatePrintPreview(routing_id())); } |