Chromium Code Reviews| Index: chrome/browser/printing/print_preview_message_handler.cc |
| diff --git a/chrome/browser/printing/print_preview_message_handler.cc b/chrome/browser/printing/print_preview_message_handler.cc |
| index d293d6f1d6e2829f2f43e1e7e3964fb66a627179..8244c9f04320e6a71e63a53eb987203bd8a4371a 100644 |
| --- a/chrome/browser/printing/print_preview_message_handler.cc |
| +++ b/chrome/browser/printing/print_preview_message_handler.cc |
| @@ -114,7 +114,19 @@ void PrintPreviewMessageHandler::OnPrintPreviewFailed(int document_cookie) { |
| // User might have closed it already. |
| if (!print_preview_tab) |
| return; |
| - print_preview_tab->web_ui()->CallJavascriptFunction("printPreviewFailed"); |
| + |
| + PrintPreviewUI* print_preview_ui = |
| + static_cast<PrintPreviewUI*>(print_preview_tab->web_ui()); |
| + |
| + if (print_preview_ui->isHidden()) { |
| + // Preview tab was hidden to serve the print request. |
| + RenderViewHost* rvh = tab_contents()->render_view_host(); |
| + rvh->Send(new PrintMsg_PrintingDone(rvh->routing_id(), false)); |
|
Lei Zhang
2011/06/09 09:54:55
Why do you need this? If we failed to generate a p
kmadhusu
2011/06/09 18:11:44
I am sending this message for 2 reasons.
(1) To di
|
| + delete print_preview_tab; |
| + return; |
| + } else { |
| + print_preview_ui->CallJavascriptFunction("printPreviewFailed"); |
| + } |
| } |
| bool PrintPreviewMessageHandler::OnMessageReceived( |