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

Unified Diff: chrome/browser/renderer_host/chrome_render_message_filter.cc

Issue 10991044: Revert 158830 - Revert 156678 - Native messaging now uses the MessageService back-end. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: Created 8 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 side-by-side diff with in-line comments
Download patch
Index: chrome/browser/renderer_host/chrome_render_message_filter.cc
===================================================================
--- chrome/browser/renderer_host/chrome_render_message_filter.cc (revision 158832)
+++ chrome/browser/renderer_host/chrome_render_message_filter.cc (working copy)
@@ -89,6 +89,8 @@
IPC_MESSAGE_HANDLER(ExtensionHostMsg_OpenChannelToExtension,
OnOpenChannelToExtension)
IPC_MESSAGE_HANDLER(ExtensionHostMsg_OpenChannelToTab, OnOpenChannelToTab)
+ IPC_MESSAGE_HANDLER(ExtensionHostMsg_OpenChannelToNativeApp,
+ OnOpenChannelToNativeApp)
IPC_MESSAGE_HANDLER_DELAY_REPLY(ExtensionHostMsg_GetMessageBundle,
OnGetExtensionMessageBundle)
IPC_MESSAGE_HANDLER(ExtensionHostMsg_AddListener, OnExtensionAddListener)
@@ -301,6 +303,40 @@
source_extension_id, target_extension_id, channel_name);
}
+void ChromeRenderMessageFilter::OnOpenChannelToNativeApp(
+ int routing_id, const std::string& source_extension_id,
+ const std::string& native_app_name,
+ const std::string& channel_name,
+ const std::string& connect_message, int* port_id) {
+ int port2_id;
+ extensions::MessageService::AllocatePortIdPair(port_id, &port2_id);
+
+ BrowserThread::PostTask(
+ BrowserThread::UI, FROM_HERE,
+ base::Bind(&ChromeRenderMessageFilter::OpenChannelToNativeAppOnUIThread,
+ this,
+ routing_id,
+ port2_id,
+ source_extension_id,
+ native_app_name,
+ channel_name,
+ connect_message));
+}
+
+void ChromeRenderMessageFilter::OpenChannelToNativeAppOnUIThread(
+ int source_routing_id,
+ int receiver_port_id,
+ const std::string& source_extension_id,
+ const std::string& native_app_name,
+ const std::string& channel_name,
+ const std::string& connect_message) {
+ DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
+ extensions::ExtensionSystem::Get(profile_)->message_service()->
+ OpenChannelToNativeApp(
+ render_process_id_, source_routing_id, receiver_port_id,
+ source_extension_id, native_app_name, channel_name, connect_message);
+}
+
void ChromeRenderMessageFilter::OnOpenChannelToTab(
int routing_id, int tab_id, const std::string& extension_id,
const std::string& channel_name, int* port_id) {
« no previous file with comments | « chrome/browser/renderer_host/chrome_render_message_filter.h ('k') | chrome/browser/tab_contents/background_contents.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698