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/printing/print_preview_message_handler.h" | 5 #include "chrome/browser/printing/print_preview_message_handler.h" |
6 | 6 |
7 #include <vector> | 7 #include <vector> |
8 | 8 |
9 #include "base/memory/ref_counted.h" | 9 #include "base/memory/ref_counted.h" |
10 #include "base/memory/ref_counted_memory.h" | 10 #include "base/memory/ref_counted_memory.h" |
(...skipping 191 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
202 PrintPreviewUI* print_preview_ui = | 202 PrintPreviewUI* print_preview_ui = |
203 static_cast<PrintPreviewUI*>(print_preview_tab->web_ui()); | 203 static_cast<PrintPreviewUI*>(print_preview_tab->web_ui()); |
204 print_preview_ui->OnDidGetDefaultPageLayout(page_layout_in_points); | 204 print_preview_ui->OnDidGetDefaultPageLayout(page_layout_in_points); |
205 } | 205 } |
206 | 206 |
207 void PrintPreviewMessageHandler::OnPrintPreviewCancelled(int document_cookie) { | 207 void PrintPreviewMessageHandler::OnPrintPreviewCancelled(int document_cookie) { |
208 // Always need to stop the worker. | 208 // Always need to stop the worker. |
209 StopWorker(document_cookie); | 209 StopWorker(document_cookie); |
210 } | 210 } |
211 | 211 |
212 void PrintPreviewMessageHandler::OnInvalidPrinterSettings(int document_cookie) { | |
Lei Zhang
2011/09/01 04:52:08
You can probably merge some of this code with Prin
| |
213 // Always need to stop the worker. | |
214 if (document_cookie) { | |
215 StopWorker(document_cookie); | |
216 } | |
217 | |
218 TabContentsWrapper* print_preview_tab = GetPrintPreviewTab(); | |
219 if (!print_preview_tab || !print_preview_tab->web_ui()) | |
220 return; | |
221 | |
222 if (g_browser_process->background_printing_manager()-> | |
223 HasPrintPreviewTab(print_preview_tab)) { | |
224 delete print_preview_tab; | |
225 } else { | |
226 PrintPreviewUI* print_preview_ui = | |
227 static_cast<PrintPreviewUI*>(print_preview_tab->web_ui()); | |
228 print_preview_ui->OnInvalidPrinterSettings(); | |
229 } | |
230 } | |
231 | |
212 bool PrintPreviewMessageHandler::OnMessageReceived( | 232 bool PrintPreviewMessageHandler::OnMessageReceived( |
213 const IPC::Message& message) { | 233 const IPC::Message& message) { |
214 bool handled = true; | 234 bool handled = true; |
215 IPC_BEGIN_MESSAGE_MAP(PrintPreviewMessageHandler, message) | 235 IPC_BEGIN_MESSAGE_MAP(PrintPreviewMessageHandler, message) |
216 IPC_MESSAGE_HANDLER(PrintHostMsg_RequestPrintPreview, | 236 IPC_MESSAGE_HANDLER(PrintHostMsg_RequestPrintPreview, |
217 OnRequestPrintPreview) | 237 OnRequestPrintPreview) |
218 IPC_MESSAGE_HANDLER(PrintHostMsg_DidGetPreviewPageCount, | 238 IPC_MESSAGE_HANDLER(PrintHostMsg_DidGetPreviewPageCount, |
219 OnDidGetPreviewPageCount) | 239 OnDidGetPreviewPageCount) |
220 IPC_MESSAGE_HANDLER(PrintHostMsg_DidPreviewPage, | 240 IPC_MESSAGE_HANDLER(PrintHostMsg_DidPreviewPage, |
221 OnDidPreviewPage) | 241 OnDidPreviewPage) |
222 IPC_MESSAGE_HANDLER(PrintHostMsg_MetafileReadyForPrinting, | 242 IPC_MESSAGE_HANDLER(PrintHostMsg_MetafileReadyForPrinting, |
223 OnMetafileReadyForPrinting) | 243 OnMetafileReadyForPrinting) |
224 IPC_MESSAGE_HANDLER(PrintHostMsg_PrintPreviewFailed, | 244 IPC_MESSAGE_HANDLER(PrintHostMsg_PrintPreviewFailed, |
225 OnPrintPreviewFailed) | 245 OnPrintPreviewFailed) |
226 IPC_MESSAGE_HANDLER(PrintHostMsg_DidGetDefaultPageLayout, | 246 IPC_MESSAGE_HANDLER(PrintHostMsg_DidGetDefaultPageLayout, |
227 OnDidGetDefaultPageLayout) | 247 OnDidGetDefaultPageLayout) |
228 IPC_MESSAGE_HANDLER(PrintHostMsg_PrintPreviewCancelled, | 248 IPC_MESSAGE_HANDLER(PrintHostMsg_PrintPreviewCancelled, |
229 OnPrintPreviewCancelled) | 249 OnPrintPreviewCancelled) |
250 IPC_MESSAGE_HANDLER(PrintHostMsg_PrintPreviewInvalidPrinterSettings, | |
251 OnInvalidPrinterSettings) | |
230 IPC_MESSAGE_UNHANDLED(handled = false) | 252 IPC_MESSAGE_UNHANDLED(handled = false) |
231 IPC_END_MESSAGE_MAP() | 253 IPC_END_MESSAGE_MAP() |
232 return handled; | 254 return handled; |
233 } | 255 } |
234 | 256 |
235 void PrintPreviewMessageHandler::DidStartLoading() { | 257 void PrintPreviewMessageHandler::DidStartLoading() { |
236 if (tab_contents()->delegate() && | 258 if (tab_contents()->delegate() && |
237 PrintPreviewTabController::IsPrintPreviewTab(tab_contents_wrapper())) { | 259 PrintPreviewTabController::IsPrintPreviewTab(tab_contents_wrapper())) { |
238 tab_contents()->SetContentRestrictions(CONTENT_RESTRICTION_PRINT); | 260 tab_contents()->SetContentRestrictions(CONTENT_RESTRICTION_PRINT); |
239 } | 261 } |
240 } | 262 } |
241 | 263 |
242 } // namespace printing | 264 } // namespace printing |
OLD | NEW |