OLD | NEW |
1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 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 "android_webview/browser/aw_print_manager.h" | 5 #include "android_webview/browser/aw_print_manager.h" |
6 | 6 |
| 7 #include "base/memory/ptr_util.h" |
7 #include "components/printing/browser/print_manager_utils.h" | 8 #include "components/printing/browser/print_manager_utils.h" |
8 #include "content/public/browser/browser_thread.h" | 9 #include "content/public/browser/browser_thread.h" |
9 #include "content/public/browser/render_frame_host.h" | 10 #include "content/public/browser/render_frame_host.h" |
10 | 11 |
11 DEFINE_WEB_CONTENTS_USER_DATA_KEY(android_webview::AwPrintManager); | 12 DEFINE_WEB_CONTENTS_USER_DATA_KEY(android_webview::AwPrintManager); |
12 | 13 |
13 namespace android_webview { | 14 namespace android_webview { |
14 | 15 |
15 // static | 16 // static |
16 AwPrintManager* AwPrintManager::CreateForWebContents( | 17 AwPrintManager* AwPrintManager::CreateForWebContents( |
17 content::WebContents* contents, | 18 content::WebContents* contents, |
18 const printing::PrintSettings& settings, | 19 const printing::PrintSettings& settings, |
19 const base::FileDescriptor& file_descriptor, | 20 const base::FileDescriptor& file_descriptor, |
20 const PrintManager::PdfWritingDoneCallback& callback) { | 21 const PrintManager::PdfWritingDoneCallback& callback) { |
21 AwPrintManager* print_manager = | 22 AwPrintManager* print_manager = |
22 new AwPrintManager(contents, settings, file_descriptor, callback); | 23 new AwPrintManager(contents, settings, file_descriptor, callback); |
23 contents->SetUserData(UserDataKey(), print_manager); | 24 contents->SetUserData(UserDataKey(), base::WrapUnique(print_manager)); |
24 return print_manager; | 25 return print_manager; |
25 } | 26 } |
26 | 27 |
27 AwPrintManager::AwPrintManager( | 28 AwPrintManager::AwPrintManager( |
28 content::WebContents* contents, | 29 content::WebContents* contents, |
29 const printing::PrintSettings& settings, | 30 const printing::PrintSettings& settings, |
30 const base::FileDescriptor& file_descriptor, | 31 const base::FileDescriptor& file_descriptor, |
31 const PdfWritingDoneCallback& callback) | 32 const PdfWritingDoneCallback& callback) |
32 : PrintManager(contents), | 33 : PrintManager(contents), |
33 settings_(settings) { | 34 settings_(settings) { |
(...skipping 45 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
79 DCHECK_CURRENTLY_ON(content::BrowserThread::UI); | 80 DCHECK_CURRENTLY_ON(content::BrowserThread::UI); |
80 PrintMsg_PrintPages_Params params; | 81 PrintMsg_PrintPages_Params params; |
81 printing::RenderParamsFromPrintSettings(settings_, ¶ms.params); | 82 printing::RenderParamsFromPrintSettings(settings_, ¶ms.params); |
82 params.params.document_cookie = scripted_params.cookie; | 83 params.params.document_cookie = scripted_params.cookie; |
83 params.pages = printing::PageRange::GetPages(settings_.ranges()); | 84 params.pages = printing::PageRange::GetPages(settings_.ranges()); |
84 PrintHostMsg_ScriptedPrint::WriteReplyParams(reply_msg, params); | 85 PrintHostMsg_ScriptedPrint::WriteReplyParams(reply_msg, params); |
85 render_frame_host->Send(reply_msg); | 86 render_frame_host->Send(reply_msg); |
86 } | 87 } |
87 | 88 |
88 } // namespace android_webview | 89 } // namespace android_webview |
OLD | NEW |