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

Side by Side Diff: content/browser/renderer_host/pepper/content_browser_pepper_host_factory.cc

Issue 337203003: Move PPB_TrueTypeFont_Dev host from renderer to browser. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 6 years, 6 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) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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/renderer_host/pepper/content_browser_pepper_host_facto ry.h" 5 #include "content/browser/renderer_host/pepper/content_browser_pepper_host_facto ry.h"
6 6
7 #include "content/browser/renderer_host/pepper/browser_ppapi_host_impl.h" 7 #include "content/browser/renderer_host/pepper/browser_ppapi_host_impl.h"
8 #include "content/browser/renderer_host/pepper/pepper_browser_font_singleton_hos t.h" 8 #include "content/browser/renderer_host/pepper/pepper_browser_font_singleton_hos t.h"
9 #include "content/browser/renderer_host/pepper/pepper_file_io_host.h" 9 #include "content/browser/renderer_host/pepper/pepper_file_io_host.h"
10 #include "content/browser/renderer_host/pepper/pepper_file_ref_host.h" 10 #include "content/browser/renderer_host/pepper/pepper_file_ref_host.h"
11 #include "content/browser/renderer_host/pepper/pepper_file_system_browser_host.h " 11 #include "content/browser/renderer_host/pepper/pepper_file_system_browser_host.h "
12 #include "content/browser/renderer_host/pepper/pepper_flash_file_message_filter. h" 12 #include "content/browser/renderer_host/pepper/pepper_flash_file_message_filter. h"
13 #include "content/browser/renderer_host/pepper/pepper_gamepad_host.h" 13 #include "content/browser/renderer_host/pepper/pepper_gamepad_host.h"
14 #include "content/browser/renderer_host/pepper/pepper_host_resolver_message_filt er.h" 14 #include "content/browser/renderer_host/pepper/pepper_host_resolver_message_filt er.h"
15 #include "content/browser/renderer_host/pepper/pepper_network_monitor_host.h" 15 #include "content/browser/renderer_host/pepper/pepper_network_monitor_host.h"
16 #include "content/browser/renderer_host/pepper/pepper_network_proxy_host.h" 16 #include "content/browser/renderer_host/pepper/pepper_network_proxy_host.h"
17 #include "content/browser/renderer_host/pepper/pepper_print_settings_manager.h" 17 #include "content/browser/renderer_host/pepper/pepper_print_settings_manager.h"
18 #include "content/browser/renderer_host/pepper/pepper_printing_host.h" 18 #include "content/browser/renderer_host/pepper/pepper_printing_host.h"
19 #include "content/browser/renderer_host/pepper/pepper_tcp_server_socket_message_ filter.h" 19 #include "content/browser/renderer_host/pepper/pepper_tcp_server_socket_message_ filter.h"
20 #include "content/browser/renderer_host/pepper/pepper_tcp_socket_message_filter. h" 20 #include "content/browser/renderer_host/pepper/pepper_tcp_socket_message_filter. h"
21 #include "content/browser/renderer_host/pepper/pepper_truetype_font_host.h"
21 #include "content/browser/renderer_host/pepper/pepper_truetype_font_list_host.h" 22 #include "content/browser/renderer_host/pepper/pepper_truetype_font_list_host.h"
22 #include "content/browser/renderer_host/pepper/pepper_udp_socket_message_filter. h" 23 #include "content/browser/renderer_host/pepper/pepper_udp_socket_message_filter. h"
23 #include "ppapi/host/message_filter_host.h" 24 #include "ppapi/host/message_filter_host.h"
24 #include "ppapi/host/ppapi_host.h" 25 #include "ppapi/host/ppapi_host.h"
25 #include "ppapi/host/resource_host.h" 26 #include "ppapi/host/resource_host.h"
26 #include "ppapi/proxy/ppapi_messages.h" 27 #include "ppapi/proxy/ppapi_messages.h"
27 #include "ppapi/shared_impl/ppapi_permissions.h" 28 #include "ppapi/shared_impl/ppapi_permissions.h"
28 29
29 using ppapi::host::MessageFilterHost; 30 using ppapi::host::MessageFilterHost;
30 using ppapi::host::ResourceHost; 31 using ppapi::host::ResourceHost;
31 using ppapi::host::ResourceMessageFilter; 32 using ppapi::host::ResourceMessageFilter;
33 using ppapi::proxy::SerializedTrueTypeFontDesc;
32 using ppapi::UnpackMessage; 34 using ppapi::UnpackMessage;
33 35
34 namespace content { 36 namespace content {
35 37
36 namespace { 38 namespace {
37 39
38 const size_t kMaxSocketsAllowed = 1024; 40 const size_t kMaxSocketsAllowed = 1024;
39 41
40 bool CanCreateSocket() { 42 bool CanCreateSocket() {
41 return PepperTCPServerSocketMessageFilter::GetNumInstances() + 43 return PepperTCPServerSocketMessageFilter::GetNumInstances() +
(...skipping 91 matching lines...) Expand 10 before | Expand all | Expand 10 after
133 switch (message.type()) { 135 switch (message.type()) {
134 case PpapiHostMsg_Printing_Create::ID: { 136 case PpapiHostMsg_Printing_Create::ID: {
135 scoped_ptr<PepperPrintSettingsManager> manager( 137 scoped_ptr<PepperPrintSettingsManager> manager(
136 new PepperPrintSettingsManagerImpl()); 138 new PepperPrintSettingsManagerImpl());
137 return scoped_ptr<ResourceHost>( 139 return scoped_ptr<ResourceHost>(
138 new PepperPrintingHost(host_->GetPpapiHost(), 140 new PepperPrintingHost(host_->GetPpapiHost(),
139 instance, 141 instance,
140 params.pp_resource(), 142 params.pp_resource(),
141 manager.Pass())); 143 manager.Pass()));
142 } 144 }
145 case PpapiHostMsg_TrueTypeFont_Create::ID: {
146 SerializedTrueTypeFontDesc desc;
147 if (!UnpackMessage<PpapiHostMsg_TrueTypeFont_Create>(message, &desc)) {
148 NOTREACHED();
149 return scoped_ptr<ResourceHost>();
150 }
151 // Check that the family name is valid UTF-8 before passing it to the
152 // host OS.
153 if (!base::IsStringUTF8(desc.family))
154 return scoped_ptr<ResourceHost>();
155
156 return scoped_ptr<ResourceHost>(new PepperTrueTypeFontHost(
157 host_, instance, params.pp_resource(), desc));
piman 2014/06/19 20:03:42 Would you want to return failure if the PepperTrue
bbudge 2014/06/21 14:12:49 Create will now always succeed, only returning a f
158 }
143 case PpapiHostMsg_TrueTypeFontSingleton_Create::ID: { 159 case PpapiHostMsg_TrueTypeFontSingleton_Create::ID: {
144 return scoped_ptr<ResourceHost>(new PepperTrueTypeFontListHost( 160 return scoped_ptr<ResourceHost>(new PepperTrueTypeFontListHost(
145 host_, instance, params.pp_resource())); 161 host_, instance, params.pp_resource()));
146 } 162 }
147 } 163 }
148 } 164 }
149 165
150 // Private interfaces. 166 // Private interfaces.
151 if (GetPermissions().HasPermission(ppapi::PERMISSION_PRIVATE)) { 167 if (GetPermissions().HasPermission(ppapi::PERMISSION_PRIVATE)) {
152 switch (message.type()) { 168 switch (message.type()) {
(...skipping 95 matching lines...) Expand 10 before | Expand all | Expand 10 after
248 return scoped_ptr<ResourceHost>(new MessageFilterHost( 264 return scoped_ptr<ResourceHost>(new MessageFilterHost(
249 host_->GetPpapiHost(), instance, resource, tcp_socket)); 265 host_->GetPpapiHost(), instance, resource, tcp_socket));
250 } 266 }
251 267
252 const ppapi::PpapiPermissions& ContentBrowserPepperHostFactory::GetPermissions() 268 const ppapi::PpapiPermissions& ContentBrowserPepperHostFactory::GetPermissions()
253 const { 269 const {
254 return host_->GetPpapiHost()->permissions(); 270 return host_->GetPpapiHost()->permissions();
255 } 271 }
256 272
257 } // namespace content 273 } // namespace content
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698