Index: chrome/renderer/print_web_view_helper_linux.cc |
diff --git a/chrome/renderer/print_web_view_helper_linux.cc b/chrome/renderer/print_web_view_helper_linux.cc |
index 27667d63c2afc8fe5c9f8943500504bfc04ee119..6305db6416e6708365eec1a08be6384781ed6dcb 100644 |
--- a/chrome/renderer/print_web_view_helper_linux.cc |
+++ b/chrome/renderer/print_web_view_helper_linux.cc |
@@ -26,24 +26,41 @@ using WebKit::WebFrame; |
using WebKit::WebNode; |
void PrintWebViewHelper::RenderPreviewPage(int page_number) { |
+ // printf("Render PP :%d \n", page_number); |
PrintMsg_PrintPage_Params page_params; |
page_params.params = print_preview_context_.print_params(); |
page_params.page_number = page_number; |
page_params.page_slot = |
print_preview_context_.GetPageSlotForPage(page_number); |
+ printing::Metafile* initial_render_metafile = |
+ is_complete_metafile_already_sent_ ? new printing::PreviewMetafile() : |
+ print_preview_context_.metafile(); |
base::TimeTicks begin_time = base::TimeTicks::Now(); |
PrintPageInternal(page_params, |
print_preview_context_.GetPrintCanvasSize(), |
- print_preview_context_.frame(), |
- print_preview_context_.metafile()); |
- |
+ print_preview_context_.frame(), initial_render_metafile); |
print_preview_context_.RenderedPreviewPage( |
base::TimeTicks::Now() - begin_time); |
printing::Metafile* page_metafile = NULL; |
if (print_preview_context_.IsModifiable()) { |
page_metafile = reinterpret_cast<printing::PreviewMetafile*>( |
- print_preview_context_.metafile())->GetMetafileForCurrentPage(); |
+ initial_render_metafile)->GetMetafileForCurrentPage(); |
+ } else { |
+ /* page_metafile = new printing::PreviewMetafile; |
+ if (!page_metafile->Init()) |
+ return; |
+ { |
+ PrintMsg_Print_Params print_params = print_pages_params_->params; |
+ scoped_ptr<PrepareFrameAndViewForPrint> prepare( |
+ new PrepareFrameAndViewForPrint(print_params, |
+ print_preview_context_.frame(), |
+ print_preview_context_.node())); |
+ PrintPageInternal(page_params, |
+ print_preview_context_.GetPrintCanvasSize(), |
+ print_preview_context_.frame(), page_metafile); |
+ } |
+ page_metafile->FinishDocument(); */ |
} |
PreviewPageRendered(page_number, page_metafile); |
} |