Chromium Code Reviews| Index: chrome/renderer/print_web_view_helper.cc |
| diff --git a/chrome/renderer/print_web_view_helper.cc b/chrome/renderer/print_web_view_helper.cc |
| index a2c9889e0970b31f5d07868efa8c23c7a68794ab..081fa7df4b2fe97e3f638cb1fcc03427e8c206c1 100644 |
| --- a/chrome/renderer/print_web_view_helper.cc |
| +++ b/chrome/renderer/print_web_view_helper.cc |
| @@ -319,7 +319,7 @@ void PrintWebViewHelper::OnPrintPreview(const DictionaryValue& settings) { |
| return; |
| } |
| - if (print_pages_params_->params.preview_request_id != 0 && |
| + if (!print_pages_params_->params.is_first_request && |
| old_print_pages_params_.get() && |
| PrintMsg_Print_Params_IsEqual(*old_print_pages_params_, |
| *print_pages_params_)) { |
| @@ -351,11 +351,12 @@ bool PrintWebViewHelper::CreatePreviewDocument() { |
| const std::vector<int>& pages = print_pages_params_->pages; |
| if (!print_preview_context_.CreatePreviewDocument(&print_params, pages)) |
| return false; |
| - int page_count = print_preview_context_.total_page_count(); |
| - bool is_modifiable = print_preview_context_.IsModifiable(); |
| - int document_cookie = print_pages_params_->params.document_cookie; |
| - Send(new PrintHostMsg_DidGetPreviewPageCount(routing_id(), document_cookie, |
| - page_count, is_modifiable)); |
| + PrintHostMsg_DidGetPreviewPageCount_Params params; |
| + params.page_count = print_preview_context_.total_page_count(); |
| + params.is_modifiable = print_preview_context_.IsModifiable(); |
| + params.document_cookie = print_pages_params_->params.document_cookie; |
| + params.preview_request_id = print_pages_params_->params.preview_request_id; |
| + Send(new PrintHostMsg_DidGetPreviewPageCount(routing_id(), params)); |
| PreviewPageRendered(printing::INVALID_PAGE_INDEX, NULL); |
| return true; |
| } |
| @@ -773,6 +774,11 @@ bool PrintWebViewHelper::UpdatePrintSettings( |
| if (!UpdatePrintSettingsRequestId(job_settings, &(settings.params))) |
| return false; |
| + if (!job_settings.GetBoolean(printing::kIsFirstRequest, |
| + &(settings.params.is_first_request))) { |
| + return false; |
|
kmadhusu
2011/08/09 22:30:40
nit: We don't want to return if we are unable to g
dpapad
2011/08/10 00:17:11
Done.
|
| + } |
| + |
| print_pages_params_.reset(new PrintMsg_PrintPages_Params(settings)); |
| Send(new PrintHostMsg_DidGetDocumentCookie(routing_id(), |
| settings.params.document_cookie)); |
| @@ -931,6 +937,8 @@ void PrintWebViewHelper::PreviewPageRendered(int page_number, |
| } |
| preview_page_params.data_size = buf_size; |
| preview_page_params.page_number = page_number; |
| + preview_page_params.preview_request_id = |
| + print_pages_params_->params.preview_request_id; |
| Send(new PrintHostMsg_DidPreviewPage(routing_id(), preview_page_params)); |
| } |