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

Unified Diff: android_webview/browser/aw_print_manager.cc

Issue 2508923003: Make printing work better with OOPIF. (try 2) (Closed)
Patch Set: Fix android_webview Created 4 years, 1 month 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « android_webview/browser/aw_print_manager.h ('k') | android_webview/browser/aw_printing_message_filter.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: android_webview/browser/aw_print_manager.cc
diff --git a/android_webview/browser/aw_print_manager.cc b/android_webview/browser/aw_print_manager.cc
index 80748093e636e55e070235560d8c138d72f7a966..6aa43f476a3e90271c618d2beeccfcb42cd2d979 100644
--- a/android_webview/browser/aw_print_manager.cc
+++ b/android_webview/browser/aw_print_manager.cc
@@ -7,6 +7,7 @@
#include "components/printing/browser/print_manager_utils.h"
#include "components/printing/common/print_messages.h"
#include "content/public/browser/browser_thread.h"
+#include "content/public/browser/render_frame_host.h"
DEFINE_WEB_CONTENTS_USER_DATA_KEY(android_webview::AwPrintManager);
@@ -41,27 +42,33 @@ AwPrintManager::~AwPrintManager() {
bool AwPrintManager::PrintNow() {
DCHECK_CURRENTLY_ON(content::BrowserThread::UI);
- return Send(new PrintMsg_PrintPages(routing_id()));
+ auto* rfh = web_contents()->GetMainFrame();
+ return rfh->Send(new PrintMsg_PrintPages(rfh->GetRoutingID()));
}
-bool AwPrintManager::OnMessageReceived(const IPC::Message& message) {
+bool AwPrintManager::OnMessageReceived(
+ const IPC::Message& message,
+ content::RenderFrameHost* render_frame_host) {
bool handled = true;
- IPC_BEGIN_MESSAGE_MAP(AwPrintManager, message)
- IPC_MESSAGE_HANDLER_DELAY_REPLY(PrintHostMsg_GetDefaultPrintSettings,
- OnGetDefaultPrintSettings)
+ IPC_BEGIN_MESSAGE_MAP_WITH_PARAM(AwPrintManager, message, render_frame_host)
+ IPC_MESSAGE_HANDLER_WITH_PARAM_DELAY_REPLY(
+ PrintHostMsg_GetDefaultPrintSettings, OnGetDefaultPrintSettings)
IPC_MESSAGE_UNHANDLED(handled = false)
IPC_END_MESSAGE_MAP()
- return handled ? true : PrintManager::OnMessageReceived(message);
+ return handled ? true
+ : PrintManager::OnMessageReceived(message, render_frame_host);
}
-void AwPrintManager::OnGetDefaultPrintSettings(IPC::Message* reply_msg) {
+void AwPrintManager::OnGetDefaultPrintSettings(
+ content::RenderFrameHost* render_frame_host,
+ IPC::Message* reply_msg) {
// Unlike the printing_message_filter, we do process this in UI thread.
DCHECK_CURRENTLY_ON(content::BrowserThread::UI);
PrintMsg_Print_Params params;
printing::RenderParamsFromPrintSettings(settings_, &params);
params.document_cookie = cookie_;
PrintHostMsg_GetDefaultPrintSettings::WriteReplyParams(reply_msg, params);
- Send(reply_msg);
+ render_frame_host->Send(reply_msg);
}
} // namespace android_webview
« no previous file with comments | « android_webview/browser/aw_print_manager.h ('k') | android_webview/browser/aw_printing_message_filter.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698