Index: chrome/common/chrome_content_client.cc |
diff --git a/chrome/common/chrome_content_client.cc b/chrome/common/chrome_content_client.cc |
index da07553e0035a9963a9ae744510393aca1742108..12a3d024eb56d8bf2c56f4b9405339f2ca08a3a3 100644 |
--- a/chrome/common/chrome_content_client.cc |
+++ b/chrome/common/chrome_content_client.cc |
@@ -51,6 +51,16 @@ const char kNaClPluginDescription[] = "Native Client Executable"; |
const char kNaClOldPluginName[] = "Chrome NaCl"; |
+const char kO3DPluginName[] = "Google Talk Plugin Video Accelerator"; |
+const char kO3DPluginMimeType[] ="application/vnd.o3d.auto"; |
+const char kO3DPluginExtension[] = ""; |
+const char kO3DPluginDescription[] = "O3D MIME"; |
+ |
+const char kGTalkPluginName[] = "Google Talk Plugin"; |
+const char kGTalkPluginMimeType[] ="application/googletalk"; |
+const char kGTalkPluginExtension[] = ".googletalk"; |
+const char kGTalkPluginDescription[] = "Google Talk Plugin"; |
+ |
#if defined(ENABLE_REMOTING) |
const char kRemotingViewerPluginName[] = "Remoting Viewer"; |
const FilePath::CharType kRemotingViewerPluginPath[] = |
@@ -117,6 +127,42 @@ void ComputeBuiltInPlugins(std::vector<content::PepperPluginInfo>* plugins) { |
} |
} |
+ static bool skip_o3d_file_check = false; |
+ if (PathService::Get(chrome::FILE_O3D_PLUGIN, &path)) { |
+ if (skip_o3d_file_check || file_util::PathExists(path)) { |
+ content::PepperPluginInfo o3d; |
+ o3d.path = path; |
+ o3d.name = kO3DPluginName; |
+ o3d.is_out_of_process = true; |
+ o3d.is_sandboxed = false; |
+ webkit::WebPluginMimeType o3d_mime_type(kO3DPluginMimeType, |
+ kO3DPluginExtension, |
+ kO3DPluginDescription); |
+ o3d.mime_types.push_back(o3d_mime_type); |
+ plugins->push_back(o3d); |
+ |
+ skip_o3d_file_check = true; |
+ } |
+ } |
+ |
+ static bool skip_gtalk_file_check = false; |
+ if (PathService::Get(chrome::FILE_GTALK_PLUGIN, &path)) { |
+ if (skip_gtalk_file_check || file_util::PathExists(path)) { |
+ content::PepperPluginInfo gtalk; |
+ gtalk.path = path; |
+ gtalk.name = kGTalkPluginName; |
+ gtalk.is_out_of_process = true; |
+ gtalk.is_sandboxed = false; |
+ webkit::WebPluginMimeType gtalk_mime_type(kGTalkPluginMimeType, |
+ kGTalkPluginExtension, |
+ kGTalkPluginDescription); |
+ gtalk.mime_types.push_back(gtalk_mime_type); |
+ plugins->push_back(gtalk); |
+ |
+ skip_gtalk_file_check = true; |
+ } |
+ } |
+ |
// The Remoting Viewer plugin is built-in. |
#if defined(ENABLE_REMOTING) |
content::PepperPluginInfo info; |