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

Side by Side Diff: content/browser/ppapi_plugin_process_host.cc

Issue 7044012: Support getting the font list in Pepper. This currently only works out of (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: '' Created 9 years, 7 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 | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2011 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 "content/browser/ppapi_plugin_process_host.h" 5 #include "content/browser/ppapi_plugin_process_host.h"
6 6
7 #include "base/command_line.h" 7 #include "base/command_line.h"
8 #include "base/file_path.h" 8 #include "base/file_path.h"
9 #include "base/process_util.h" 9 #include "base/process_util.h"
10 #include "base/utf_string_conversions.h" 10 #include "base/utf_string_conversions.h"
11 #include "chrome/common/chrome_switches.h" 11 #include "chrome/common/chrome_switches.h"
12 #include "chrome/common/render_messages.h" 12 #include "chrome/common/render_messages.h"
13 #include "content/browser/plugin_service.h" 13 #include "content/browser/plugin_service.h"
14 #include "content/browser/renderer_host/render_message_filter.h" 14 #include "content/browser/renderer_host/render_message_filter.h"
15 #include "content/common/pepper_plugin_registry.h" 15 #include "content/common/pepper_plugin_registry.h"
16 #include "ipc/ipc_switches.h" 16 #include "ipc/ipc_switches.h"
17 #include "ppapi/proxy/ppapi_messages.h" 17 #include "ppapi/proxy/ppapi_messages.h"
18 18
19 PpapiPluginProcessHost::PpapiPluginProcessHost() 19 PpapiPluginProcessHost::PpapiPluginProcessHost(net::HostResolver* host_resolver)
20 : BrowserChildProcessHost(ChildProcessInfo::PPAPI_PLUGIN_PROCESS) { 20 : BrowserChildProcessHost(ChildProcessInfo::PPAPI_PLUGIN_PROCESS),
21 filter_(new PepperMessageFilter(host_resolver)) {
22 AddFilter(filter_.get());
21 } 23 }
22 24
23 PpapiPluginProcessHost::~PpapiPluginProcessHost() { 25 PpapiPluginProcessHost::~PpapiPluginProcessHost() {
24 CancelRequests(); 26 CancelRequests();
25 } 27 }
26 28
27 bool PpapiPluginProcessHost::Init(const PepperPluginInfo& info) { 29 bool PpapiPluginProcessHost::Init(const PepperPluginInfo& info) {
28 plugin_path_ = info.path; 30 plugin_path_ = info.path;
29 set_name(UTF8ToWide(info.name)); 31 set_name(UTF8ToWide(info.name));
30 set_version(UTF8ToWide(info.version)); 32 set_version(UTF8ToWide(info.version));
(...skipping 69 matching lines...) Expand 10 before | Expand all | Expand 10 after
100 } 102 }
101 103
102 bool PpapiPluginProcessHost::CanShutdown() { 104 bool PpapiPluginProcessHost::CanShutdown() {
103 return true; 105 return true;
104 } 106 }
105 107
106 void PpapiPluginProcessHost::OnProcessLaunched() { 108 void PpapiPluginProcessHost::OnProcessLaunched() {
107 } 109 }
108 110
109 bool PpapiPluginProcessHost::OnMessageReceived(const IPC::Message& msg) { 111 bool PpapiPluginProcessHost::OnMessageReceived(const IPC::Message& msg) {
112 // Some messages are handled by the filter.
113 /*
viettrungluu 2011/05/18 20:40:43 ?
114 bool message_was_ok = false;
115 if (filter_.OnMessageReceived(msg, &message_was_ok))
116 return true;
117 */
118
110 bool handled = true; 119 bool handled = true;
111 IPC_BEGIN_MESSAGE_MAP(PpapiPluginProcessHost, msg) 120 IPC_BEGIN_MESSAGE_MAP(PpapiPluginProcessHost, msg)
112 IPC_MESSAGE_HANDLER(PpapiHostMsg_ChannelCreated, 121 IPC_MESSAGE_HANDLER(PpapiHostMsg_ChannelCreated,
113 OnRendererPluginChannelCreated) 122 OnRendererPluginChannelCreated)
114 IPC_MESSAGE_UNHANDLED(handled = false) 123 IPC_MESSAGE_UNHANDLED(handled = false)
115 IPC_END_MESSAGE_MAP() 124 IPC_END_MESSAGE_MAP()
116 DCHECK(handled); 125 DCHECK(handled);
117 return handled; 126 return handled;
118 } 127 }
119 128
(...skipping 56 matching lines...) Expand 10 before | Expand all | Expand 10 after
176 ::DuplicateHandle(::GetCurrentProcess(), plugin_process, 185 ::DuplicateHandle(::GetCurrentProcess(), plugin_process,
177 renderer_process, &renderers_plugin_handle, 186 renderer_process, &renderers_plugin_handle,
178 0, FALSE, DUPLICATE_SAME_ACCESS); 187 0, FALSE, DUPLICATE_SAME_ACCESS);
179 #elif defined(OS_POSIX) 188 #elif defined(OS_POSIX)
180 // Don't need to duplicate anything on POSIX since it's just a PID. 189 // Don't need to duplicate anything on POSIX since it's just a PID.
181 base::ProcessHandle renderers_plugin_handle = plugin_process; 190 base::ProcessHandle renderers_plugin_handle = plugin_process;
182 #endif 191 #endif
183 192
184 client->OnChannelOpened(renderers_plugin_handle, channel_handle); 193 client->OnChannelOpened(renderers_plugin_handle, channel_handle);
185 } 194 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698