| Index: chrome/browser/printing/print_view_manager.cc
|
| diff --git a/chrome/browser/printing/print_view_manager.cc b/chrome/browser/printing/print_view_manager.cc
|
| index 6afd07b443725b2bb3b55f195554bbb458a5b643..feb28ddb8b18249723bfcd7e0324647e5ecab714 100644
|
| --- a/chrome/browser/printing/print_view_manager.cc
|
| +++ b/chrome/browser/printing/print_view_manager.cc
|
| @@ -54,11 +54,13 @@ void EnableInternalPDFPluginForContents(int render_process_id,
|
|
|
| namespace printing {
|
|
|
| +bool PrintViewManager::TestDelegate::ScriptedPrint(
|
| + const content::RenderFrameHost* render_frame_host) {
|
| + return true;
|
| +}
|
| +
|
| PrintViewManager::PrintViewManager(content::WebContents* web_contents)
|
| - : PrintViewManagerBase(web_contents),
|
| - print_preview_state_(NOT_PREVIEWING),
|
| - print_preview_rfh_(nullptr),
|
| - scripted_print_preview_rph_(nullptr) {
|
| + : PrintViewManagerBase(web_contents) {
|
| if (PrintPreviewDialogController::IsPrintPreviewDialog(web_contents)) {
|
| EnableInternalPDFPluginForContents(
|
| web_contents->GetRenderProcessHost()->GetID(),
|
| @@ -200,6 +202,11 @@ void PrintViewManager::OnSetupScriptedPrintPreview(
|
| return;
|
| }
|
|
|
| + if (test_delegate_ && !test_delegate_->ScriptedPrint(rfh)) {
|
| + rfh->Send(reply_msg);
|
| + return;
|
| + }
|
| +
|
| DCHECK(!print_preview_rfh_);
|
| print_preview_rfh_ = rfh;
|
| print_preview_state_ = SCRIPTED_PREVIEW;
|
| @@ -210,7 +217,6 @@ void PrintViewManager::OnSetupScriptedPrintPreview(
|
|
|
| void PrintViewManager::OnShowScriptedPrintPreview(content::RenderFrameHost* rfh,
|
| bool source_is_modifiable) {
|
| - DCHECK(print_preview_rfh_);
|
| if (rfh != print_preview_rfh_)
|
| return;
|
|
|
| @@ -250,4 +256,8 @@ bool PrintViewManager::OnMessageReceived(
|
| PrintViewManagerBase::OnMessageReceived(message, render_frame_host);
|
| }
|
|
|
| +void PrintViewManager::SetTestDelegate(TestDelegate* delegate) {
|
| + test_delegate_ = delegate;
|
| +}
|
| +
|
| } // namespace printing
|
|
|