Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(4272)

Unified Diff: chrome/browser/printing/print_preview_message_handler.cc

Issue 7740005: Print preview not showing if default print is invalid. (Closed) Base URL: http://git.chromium.org/git/chromium.git@trunk
Patch Set: Merge with latest trunk (again) Created 9 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
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 b5b47449674a1907a91dc12033c770ee2532d033..d1687d56f3279b28655c40abdfff7e41b3cd036e 100644
--- a/chrome/browser/printing/print_preview_message_handler.cc
+++ b/chrome/browser/printing/print_preview_message_handler.cc
@@ -209,6 +209,26 @@ void PrintPreviewMessageHandler::OnPrintPreviewCancelled(int document_cookie) {
StopWorker(document_cookie);
}
+void PrintPreviewMessageHandler::OnInvalidPrinterSettings(int document_cookie) {
Lei Zhang 2011/09/01 04:52:08 You can probably merge some of this code with Prin
+ // Always need to stop the worker.
+ if (document_cookie) {
+ StopWorker(document_cookie);
+ }
+
+ TabContentsWrapper* print_preview_tab = GetPrintPreviewTab();
+ if (!print_preview_tab || !print_preview_tab->web_ui())
+ return;
+
+ if (g_browser_process->background_printing_manager()->
+ HasPrintPreviewTab(print_preview_tab)) {
+ delete print_preview_tab;
+ } else {
+ PrintPreviewUI* print_preview_ui =
+ static_cast<PrintPreviewUI*>(print_preview_tab->web_ui());
+ print_preview_ui->OnInvalidPrinterSettings();
+ }
+}
+
bool PrintPreviewMessageHandler::OnMessageReceived(
const IPC::Message& message) {
bool handled = true;
@@ -227,6 +247,8 @@ bool PrintPreviewMessageHandler::OnMessageReceived(
OnDidGetDefaultPageLayout)
IPC_MESSAGE_HANDLER(PrintHostMsg_PrintPreviewCancelled,
OnPrintPreviewCancelled)
+ IPC_MESSAGE_HANDLER(PrintHostMsg_PrintPreviewInvalidPrinterSettings,
+ OnInvalidPrinterSettings)
IPC_MESSAGE_UNHANDLED(handled = false)
IPC_END_MESSAGE_MAP()
return handled;

Powered by Google App Engine
This is Rietveld 408576698