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 9ec1ceb0c7daecfd535a29c10880853fba266185..ab8de1efa0be73a5e1b217e34caebb8befd13904 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" |
@@ -279,6 +280,24 @@ bool ChromeContentRendererClient::OverrideCreatePlugin( |
return true; |
} |
+bool ChromeContentRendererClient::ShouldOverrideCreateWebMediaPlayer( |
+ RenderView* view) { |
+ return prerender::PrerenderHelper::IsPrerendering(view); |
+} |
+ |
+void ChromeContentRendererClient::OverrideCreateWebMediaPlayer( |
+ 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( |
RenderView* render_view, |
WebFrame* frame, |