Index: chrome/renderer/chrome_content_renderer_client.cc |
diff --git a/chrome/renderer/chrome_content_renderer_client.cc b/chrome/renderer/chrome_content_renderer_client.cc |
index e430e7c8466c569bc1fb99ee4d7ec2e53b7efeb6..b9183dea2ece39ba652a254e5499916b989a4185 100644 |
--- a/chrome/renderer/chrome_content_renderer_client.cc |
+++ b/chrome/renderer/chrome_content_renderer_client.cc |
@@ -47,6 +47,7 @@ |
#include "chrome/renderer/page_load_histograms.h" |
#include "chrome/renderer/plugin_uma.h" |
#include "chrome/renderer/prerender/prerender_helper.h" |
+#include "chrome/renderer/prerender/prerender_webmediaplayer.h" |
#include "chrome/renderer/print_web_view_helper.h" |
#include "chrome/renderer/renderer_histogram_snapshots.h" |
#include "chrome/renderer/safe_browsing/malware_dom_details.h" |
@@ -277,6 +278,24 @@ bool ChromeContentRendererClient::OverrideCreatePlugin( |
return true; |
} |
+bool ChromeContentRendererClient::ShouldOverrideCreateWebMediaPlayer( |
+ content::RenderView* view) { |
+ return prerender::PrerenderHelper::IsPrerendering(view); |
+} |
+ |
+void ChromeContentRendererClient::OverrideCreateWebMediaPlayer( |
+ content::RenderView* render_view, |
+ WebKit::WebMediaPlayerClient* client, |
+ media::FilterCollection* collection, |
+ media::MessageLoopFactory* message_loop_factory, |
+ webkit_glue::MediaStreamClient* media_stream_client, |
+ media::MediaLog* media_log, |
+ webkit_glue::WebMediaPlayerImpl** player) { |
+ DCHECK(ShouldOverrideCreateWebMediaPlayer(render_view)); |
+ *player = new prerender::PrerenderWebMediaPlayer(render_view, client, |
+ collection, message_loop_factory, media_stream_client, media_log); |
+} |
+ |
WebPlugin* ChromeContentRendererClient::CreatePlugin( |
content::RenderView* render_view, |
WebFrame* frame, |