OLD | NEW |
(Empty) | |
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. |
| 4 |
| 5 #include "athena/main/athena_content_client.h" |
| 6 |
| 7 #include "base/files/file_path.h" |
| 8 #include "base/path_service.h" |
| 9 #include "content/public/common/pepper_plugin_info.h" |
| 10 #include "ppapi/shared_impl/ppapi_permissions.h" |
| 11 |
| 12 namespace athena { |
| 13 |
| 14 AthenaContentClient::AthenaContentClient() {} |
| 15 |
| 16 AthenaContentClient::~AthenaContentClient() {} |
| 17 |
| 18 void AthenaContentClient::AddPepperPlugins( |
| 19 std::vector<content::PepperPluginInfo>* plugins) { |
| 20 const char kPDFPluginMimeType[] = "application/pdf"; |
| 21 const char kPDFPluginExtension[] = "pdf"; |
| 22 const char kPDFPluginDescription[] = "Portable Document Format"; |
| 23 const char kPDFPluginPrintPreviewMimeType[] = |
| 24 "application/x-google-chrome-print-preview-pdf"; |
| 25 const uint32 kPDFPluginPermissions = |
| 26 ppapi::PERMISSION_PRIVATE | ppapi::PERMISSION_DEV; |
| 27 const char kPDFPluginName[] = "Chrome PDF Viewer"; |
| 28 const base::FilePath::CharType kPDFPluginFileName[] = |
| 29 FILE_PATH_LITERAL("libpdf.so"); |
| 30 |
| 31 base::FilePath module; |
| 32 if (!PathService::Get(base::DIR_MODULE, &module)) |
| 33 return; |
| 34 |
| 35 content::PepperPluginInfo pdf; |
| 36 pdf.path = base::FilePath(module.Append(kPDFPluginFileName)); |
| 37 pdf.name = kPDFPluginName; |
| 38 content::WebPluginMimeType pdf_mime_type( |
| 39 kPDFPluginMimeType, kPDFPluginExtension, kPDFPluginDescription); |
| 40 content::WebPluginMimeType print_preview_pdf_mime_type( |
| 41 kPDFPluginPrintPreviewMimeType, |
| 42 kPDFPluginExtension, |
| 43 kPDFPluginDescription); |
| 44 pdf.mime_types.push_back(pdf_mime_type); |
| 45 pdf.mime_types.push_back(print_preview_pdf_mime_type); |
| 46 pdf.permissions = kPDFPluginPermissions; |
| 47 plugins->push_back(pdf); |
| 48 |
| 49 ShellContentClient::AddPepperPlugins(plugins); |
| 50 } |
| 51 |
| 52 } // namespace athena |
OLD | NEW |