Index: chrome/browser/printing/print_preview_message_handler.cc |
=================================================================== |
--- chrome/browser/printing/print_preview_message_handler.cc (revision 96579) |
+++ chrome/browser/printing/print_preview_message_handler.cc (working copy) |
@@ -82,11 +82,9 @@ |
PrintPreviewTabController::PrintPreview(tab_contents()); |
} |
-void PrintPreviewMessageHandler::OnDidGetPreviewPageCount( |
- int document_cookie, |
- int page_count, |
- bool is_modifiable, |
- bool clear_preview_data) { |
+void PrintPreviewMessageHandler::OnDidGetPreviewPageCount(int document_cookie, |
+ int page_count, |
+ bool is_modifiable) { |
if (page_count <= 0) |
return; |
@@ -96,10 +94,6 @@ |
PrintPreviewUI* print_preview_ui = |
static_cast<PrintPreviewUI*>(print_preview_tab->web_ui()); |
- |
- if (!is_modifiable || clear_preview_data) |
- print_preview_ui->ClearAllPreviewData(); |
- |
print_preview_ui->OnDidGetPreviewPageCount( |
document_cookie, page_count, is_modifiable); |
} |
@@ -125,7 +119,12 @@ |
return; |
} |
+ int requested_preview_page_index = INVALID_PAGE_INDEX; |
int page_number = params.page_number; |
+ |
+ if (page_number == FIRST_PAGE_INDEX) |
+ print_preview_ui->ClearAllPreviewData(); |
+ |
if (page_number >= FIRST_PAGE_INDEX && params.data_size) { |
RefCountedBytes* data_bytes = |
GetDataFromHandle(params.metafile_data_handle, params.data_size); |
@@ -133,12 +132,15 @@ |
print_preview_ui->SetPrintPreviewDataForIndex(page_number, data_bytes); |
print_preview_ui->OnDidPreviewPage(page_number); |
+ // TODO(kmadhusu): Query |PrintPreviewUI| and update |
+ // |requested_preview_page_index| accordingly. |
} |
- rvh->Send(new PrintMsg_ContinuePreview(rvh->routing_id())); |
+ rvh->Send(new PrintMsg_ContinuePreview(rvh->routing_id(), |
+ requested_preview_page_index)); |
} |
-void PrintPreviewMessageHandler::OnMetafileReadyForPrinting( |
+void PrintPreviewMessageHandler::OnPagesReadyForPreview( |
const PrintHostMsg_DidPreviewDocument_Params& params) { |
StopWorker(params.document_cookie); |
@@ -216,8 +218,8 @@ |
OnDidGetPreviewPageCount) |
IPC_MESSAGE_HANDLER(PrintHostMsg_DidPreviewPage, |
OnDidPreviewPage) |
- IPC_MESSAGE_HANDLER(PrintHostMsg_MetafileReadyForPrinting, |
- OnMetafileReadyForPrinting) |
+ IPC_MESSAGE_HANDLER(PrintHostMsg_PagesReadyForPreview, |
+ OnPagesReadyForPreview) |
IPC_MESSAGE_HANDLER(PrintHostMsg_PrintPreviewFailed, |
OnPrintPreviewFailed) |
IPC_MESSAGE_UNHANDLED(handled = false) |