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

Side by Side Diff: android_webview/renderer/print_web_view_helper_linux.cc

Issue 516833002: Removed NativeMetafile and PreviewMetafile typedef as it's always PdfMetafileSkia. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@no_pdf
Patch Set: Thu Aug 28 17:07:38 PDT 2014 Created 6 years, 3 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 unified diff | Download patch
OLDNEW
1 // Copyright 2013 The Chromium Authors. All rights reserved. 1 // Copyright 2013 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 // TODO(sgurun) copied from chrome/renderer. Remove after crbug.com/322276 5 // TODO(sgurun) copied from chrome/renderer. Remove after crbug.com/322276
6 6
7 #include "android_webview/renderer/print_web_view_helper.h" 7 #include "android_webview/renderer/print_web_view_helper.h"
8 8
9 #include "android_webview/common/print_messages.h" 9 #include "android_webview/common/print_messages.h"
10 #include "base/logging.h" 10 #include "base/logging.h"
11 #include "base/memory/scoped_ptr.h" 11 #include "base/memory/scoped_ptr.h"
12 #include "content/public/renderer/render_thread.h" 12 #include "content/public/renderer/render_thread.h"
13 #include "printing/metafile.h" 13 #include "printing/metafile.h"
14 #include "printing/metafile_impl.h"
15 #include "printing/metafile_skia_wrapper.h" 14 #include "printing/metafile_skia_wrapper.h"
16 #include "printing/page_size_margins.h" 15 #include "printing/page_size_margins.h"
16 #include "printing/pdf_metafile_skia.h"
17 #include "skia/ext/platform_device.h" 17 #include "skia/ext/platform_device.h"
18 #include "skia/ext/vector_canvas.h" 18 #include "skia/ext/vector_canvas.h"
19 #include "third_party/WebKit/public/web/WebLocalFrame.h" 19 #include "third_party/WebKit/public/web/WebLocalFrame.h"
20 20
21 #if !defined(OS_CHROMEOS) && !defined(OS_ANDROID) 21 #if !defined(OS_CHROMEOS) && !defined(OS_ANDROID)
22 #include "base/process/process_handle.h" 22 #include "base/process/process_handle.h"
23 #else 23 #else
24 #include "base/file_descriptor_posix.h" 24 #include "base/file_descriptor_posix.h"
25 #endif // !defined(OS_CHROMEOS) && !defined(OS_ANDROID) 25 #endif // !defined(OS_CHROMEOS) && !defined(OS_ANDROID)
26 26
27 namespace printing { 27 namespace printing {
28 28
29 using blink::WebFrame; 29 using blink::WebFrame;
30 30
31 bool PrintWebViewHelper::RenderPreviewPage( 31 bool PrintWebViewHelper::RenderPreviewPage(
32 int page_number, 32 int page_number,
33 const PrintMsg_Print_Params& print_params) { 33 const PrintMsg_Print_Params& print_params) {
34 PrintMsg_PrintPage_Params page_params; 34 PrintMsg_PrintPage_Params page_params;
35 page_params.params = print_params; 35 page_params.params = print_params;
36 page_params.page_number = page_number; 36 page_params.page_number = page_number;
37 scoped_ptr<Metafile> draft_metafile; 37 scoped_ptr<Metafile> draft_metafile;
38 Metafile* initial_render_metafile = print_preview_context_.metafile(); 38 Metafile* initial_render_metafile = print_preview_context_.metafile();
39 if (print_preview_context_.IsModifiable() && is_print_ready_metafile_sent_) { 39 if (print_preview_context_.IsModifiable() && is_print_ready_metafile_sent_) {
40 draft_metafile.reset(new PreviewMetafile); 40 draft_metafile.reset(new PdfMetafileSkia);
41 initial_render_metafile = draft_metafile.get(); 41 initial_render_metafile = draft_metafile.get();
42 } 42 }
43 43
44 base::TimeTicks begin_time = base::TimeTicks::Now(); 44 base::TimeTicks begin_time = base::TimeTicks::Now();
45 PrintPageInternal(page_params, 45 PrintPageInternal(page_params,
46 print_preview_context_.GetPrintCanvasSize(), 46 print_preview_context_.GetPrintCanvasSize(),
47 print_preview_context_.prepared_frame(), 47 print_preview_context_.prepared_frame(),
48 initial_render_metafile); 48 initial_render_metafile);
49 print_preview_context_.RenderedPreviewPage( 49 print_preview_context_.RenderedPreviewPage(
50 base::TimeTicks::Now() - begin_time); 50 base::TimeTicks::Now() - begin_time);
51 if (draft_metafile.get()) { 51 if (draft_metafile.get()) {
52 draft_metafile->FinishDocument(); 52 draft_metafile->FinishDocument();
53 } else if (print_preview_context_.IsModifiable() && 53 } else if (print_preview_context_.IsModifiable() &&
54 print_preview_context_.generate_draft_pages()) { 54 print_preview_context_.generate_draft_pages()) {
55 DCHECK(!draft_metafile.get()); 55 DCHECK(!draft_metafile.get());
56 draft_metafile.reset( 56 draft_metafile.reset(
57 print_preview_context_.metafile()->GetMetafileForCurrentPage()); 57 print_preview_context_.metafile()->GetMetafileForCurrentPage());
58 } 58 }
59 return PreviewPageRendered(page_number, draft_metafile.get()); 59 return PreviewPageRendered(page_number, draft_metafile.get());
60 } 60 }
61 61
62 bool PrintWebViewHelper::PrintPagesNative(blink::WebFrame* frame, 62 bool PrintWebViewHelper::PrintPagesNative(blink::WebFrame* frame,
63 int page_count, 63 int page_count,
64 const gfx::Size& canvas_size) { 64 const gfx::Size& canvas_size) {
65 NativeMetafile metafile; 65 PdfMetafileSkia metafile;
66 if (!metafile.Init()) 66 if (!metafile.Init())
67 return false; 67 return false;
68 68
69 const PrintMsg_PrintPages_Params& params = *print_pages_params_; 69 const PrintMsg_PrintPages_Params& params = *print_pages_params_;
70 std::vector<int> printed_pages; 70 std::vector<int> printed_pages;
71 71
72 if (params.pages.empty()) { 72 if (params.pages.empty()) {
73 for (int i = 0; i < page_count; ++i) { 73 for (int i = 0; i < page_count; ++i) {
74 printed_pages.push_back(i); 74 printed_pages.push_back(i);
75 } 75 }
(...skipping 115 matching lines...) Expand 10 before | Expand all | Expand 10 after
191 } 191 }
192 RenderPageContent(frame, params.page_number, canvas_area, content_area, 192 RenderPageContent(frame, params.page_number, canvas_area, content_area,
193 scale_factor, canvas.get()); 193 scale_factor, canvas.get());
194 194
195 // Done printing. Close the device context to retrieve the compiled metafile. 195 // Done printing. Close the device context to retrieve the compiled metafile.
196 if (!metafile->FinishPage()) 196 if (!metafile->FinishPage())
197 NOTREACHED() << "metafile failed"; 197 NOTREACHED() << "metafile failed";
198 } 198 }
199 199
200 } // namespace printing 200 } // namespace printing
OLDNEW
« no previous file with comments | « android_webview/renderer/print_web_view_helper.cc ('k') | chrome/browser/printing/print_view_manager_base.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698