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

Side by Side Diff: ppapi/proxy/ppb_pdf_proxy.cc

Issue 7844018: Revert 100748 - This patch tries to remove most of the manual registration for Pepper interfaces,... (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: Created 9 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 unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « ppapi/proxy/ppb_pdf_proxy.h ('k') | ppapi/proxy/ppb_surface_3d_proxy.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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 "ppapi/proxy/ppb_pdf_proxy.h" 5 #include "ppapi/proxy/ppb_pdf_proxy.h"
6 6
7 #include <string.h> // For memcpy. 7 #include <string.h> // For memcpy.
8 8
9 #include <map> 9 #include <map>
10 10
(...skipping 100 matching lines...) Expand 10 before | Expand all | Expand 10 after
111 return true; 111 return true;
112 } 112 }
113 113
114 const PPB_PDF pdf_interface = { 114 const PPB_PDF pdf_interface = {
115 NULL, // &GetLocalizedString, 115 NULL, // &GetLocalizedString,
116 NULL, // &GetResourceImage, 116 NULL, // &GetResourceImage,
117 &GetFontFileWithFallback, 117 &GetFontFileWithFallback,
118 &GetFontTableForPrivateFontFile, 118 &GetFontTableForPrivateFontFile,
119 }; 119 };
120 120
121 InterfaceProxy* CreatePDFProxy(Dispatcher* dispatcher) { 121 InterfaceProxy* CreatePDFProxy(Dispatcher* dispatcher,
122 return new PPB_PDF_Proxy(dispatcher); 122 const void* target_interface) {
123 return new PPB_PDF_Proxy(dispatcher, target_interface);
123 } 124 }
124 125
125 } // namespace 126 } // namespace
126 127
127 PPB_PDF_Proxy::PPB_PDF_Proxy(Dispatcher* dispatcher) 128 PPB_PDF_Proxy::PPB_PDF_Proxy(Dispatcher* dispatcher,
128 : InterfaceProxy(dispatcher), 129 const void* target_interface)
129 ppb_pdf_impl_(NULL) { 130 : InterfaceProxy(dispatcher, target_interface) {
130 if (!dispatcher->IsPlugin()) {
131 ppb_pdf_impl_ = static_cast<const PPB_PDF*>(
132 dispatcher->local_get_interface()(PPB_PDF_INTERFACE));
133 }
134 } 131 }
135 132
136 PPB_PDF_Proxy::~PPB_PDF_Proxy() { 133 PPB_PDF_Proxy::~PPB_PDF_Proxy() {
137 } 134 }
138 135
139 // static 136 // static
140 const InterfaceProxy::Info* PPB_PDF_Proxy::GetInfo() { 137 const InterfaceProxy::Info* PPB_PDF_Proxy::GetInfo() {
141 static const Info info = { 138 static const Info info = {
142 &pdf_interface, 139 &pdf_interface,
143 PPB_PDF_INTERFACE, 140 PPB_PDF_INTERFACE,
(...skipping 18 matching lines...) Expand all
162 } 159 }
163 160
164 void PPB_PDF_Proxy::OnMsgGetFontFileWithFallback( 161 void PPB_PDF_Proxy::OnMsgGetFontFileWithFallback(
165 PP_Instance instance, 162 PP_Instance instance,
166 const SerializedFontDescription& in_desc, 163 const SerializedFontDescription& in_desc,
167 int32_t charset, 164 int32_t charset,
168 HostResource* result) { 165 HostResource* result) {
169 PP_FontDescription_Dev desc; 166 PP_FontDescription_Dev desc;
170 in_desc.SetToPPFontDescription(dispatcher(), &desc, false); 167 in_desc.SetToPPFontDescription(dispatcher(), &desc, false);
171 result->SetHostResource(instance, 168 result->SetHostResource(instance,
172 ppb_pdf_impl_->GetFontFileWithFallback( 169 ppb_pdf_target()->GetFontFileWithFallback(
173 instance, &desc, static_cast<PP_PrivateFontCharset>(charset))); 170 instance, &desc, static_cast<PP_PrivateFontCharset>(charset)));
174 } 171 }
175 172
176 void PPB_PDF_Proxy::OnMsgGetFontTableForPrivateFontFile( 173 void PPB_PDF_Proxy::OnMsgGetFontTableForPrivateFontFile(
177 const HostResource& font_file, 174 const HostResource& font_file,
178 uint32_t table, 175 uint32_t table,
179 std::string* result) { 176 std::string* result) {
180 // TODO(brettw): It would be nice not to copy here. At least on Linux, 177 // TODO(brettw): It would be nice not to copy here. At least on Linux,
181 // we can map the font file into shared memory and read it that way. 178 // we can map the font file into shared memory and read it that way.
182 uint32_t table_length = 0; 179 uint32_t table_length = 0;
183 if (!ppb_pdf_impl_->GetFontTableForPrivateFontFile( 180 if (!ppb_pdf_target()->GetFontTableForPrivateFontFile(
184 font_file.host_resource(), table, NULL, &table_length)) 181 font_file.host_resource(), table, NULL, &table_length))
185 return; 182 return;
186 183
187 result->resize(table_length); 184 result->resize(table_length);
188 ppb_pdf_impl_->GetFontTableForPrivateFontFile(font_file.host_resource(), 185 ppb_pdf_target()->GetFontTableForPrivateFontFile(font_file.host_resource(),
189 table, const_cast<char*>(result->c_str()), &table_length); 186 table, const_cast<char*>(result->c_str()), &table_length);
190 } 187 }
191 188
192 } // namespace proxy 189 } // namespace proxy
193 } // namespace ppapi 190 } // namespace ppapi
OLDNEW
« no previous file with comments | « ppapi/proxy/ppb_pdf_proxy.h ('k') | ppapi/proxy/ppb_surface_3d_proxy.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698