Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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 "chrome/renderer/chrome_content_renderer_client.h" | 5 #include "chrome/renderer/chrome_content_renderer_client.h" |
| 6 | 6 |
| 7 #include "base/command_line.h" | 7 #include "base/command_line.h" |
| 8 #include "base/logging.h" | 8 #include "base/logging.h" |
| 9 #include "base/metrics/histogram.h" | 9 #include "base/metrics/histogram.h" |
| 10 #include "base/path_service.h" | 10 #include "base/path_service.h" |
| (...skipping 445 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 456 } | 456 } |
| 457 | 457 |
| 458 WebPlugin* ChromeContentRendererClient::CreatePluginReplacement( | 458 WebPlugin* ChromeContentRendererClient::CreatePluginReplacement( |
| 459 content::RenderView* render_view, | 459 content::RenderView* render_view, |
| 460 const base::FilePath& plugin_path) { | 460 const base::FilePath& plugin_path) { |
| 461 PluginPlaceholder* placeholder = | 461 PluginPlaceholder* placeholder = |
| 462 PluginPlaceholder::CreateErrorPlugin(render_view, plugin_path); | 462 PluginPlaceholder::CreateErrorPlugin(render_view, plugin_path); |
| 463 return placeholder->plugin(); | 463 return placeholder->plugin(); |
| 464 } | 464 } |
| 465 | 465 |
| 466 webkit_media::WebMediaPlayerImpl* | 466 void ChromeContentRendererClient::DeferMediaLoad( |
| 467 ChromeContentRendererClient::OverrideCreateWebMediaPlayer( | |
| 468 content::RenderView* render_view, | 467 content::RenderView* render_view, |
| 469 WebKit::WebFrame* frame, | 468 const base::Closure& closure) { |
| 470 WebKit::WebMediaPlayerClient* client, | |
| 471 base::WeakPtr<webkit_media::WebMediaPlayerDelegate> delegate, | |
| 472 const webkit_media::WebMediaPlayerParams& params) { | |
| 473 #if defined(OS_ANDROID) | 469 #if defined(OS_ANDROID) |
| 474 // Chromium for Android doesn't support prerender yet. | 470 // Chromium for Android doesn't support prerender yet. |
| 475 return NULL; | 471 closure.Run(); |
| 472 return; | |
| 476 #else | 473 #else |
| 477 if (!prerender::PrerenderHelper::IsPrerendering(render_view)) | 474 if (!prerender::PrerenderHelper::IsPrerendering(render_view)) { |
| 478 return NULL; | 475 closure.Run(); |
| 476 return; | |
| 477 } | |
| 479 | 478 |
| 480 return new prerender::PrerenderWebMediaPlayer( | 479 // Lifetime of |prerender_player| is managed by content::RenderViewObserver. |
| 481 render_view, frame, client, delegate, params); | 480 prerender::PrerenderWebMediaPlayer* prerender_player = |
| 481 new prerender::PrerenderWebMediaPlayer(render_view); | |
| 482 prerender_player->DeferLoad(closure); | |
|
jam
2013/07/02 15:18:34
it seems unnecessary to have DeferLoad, why not ju
scherkus (not reviewing)
2013/07/02 18:36:19
Doh. Right. Good call!
| |
| 482 #endif | 483 #endif |
| 483 } | 484 } |
| 484 | 485 |
| 485 WebPlugin* ChromeContentRendererClient::CreatePlugin( | 486 WebPlugin* ChromeContentRendererClient::CreatePlugin( |
| 486 content::RenderView* render_view, | 487 content::RenderView* render_view, |
| 487 WebFrame* frame, | 488 WebFrame* frame, |
| 488 const WebPluginParams& original_params, | 489 const WebPluginParams& original_params, |
| 489 const ChromeViewHostMsg_GetPluginInfo_Output& output) { | 490 const ChromeViewHostMsg_GetPluginInfo_Output& output) { |
| 490 const ChromeViewHostMsg_GetPluginInfo_Status& status = output.status; | 491 const ChromeViewHostMsg_GetPluginInfo_Status& status = output.status; |
| 491 const WebPluginInfo& plugin = output.plugin; | 492 const WebPluginInfo& plugin = output.plugin; |
| (...skipping 787 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 1279 if (CommandLine::ForCurrentProcess()->HasSwitch( | 1280 if (CommandLine::ForCurrentProcess()->HasSwitch( |
| 1280 switches::kEnablePepperTesting)) { | 1281 switches::kEnablePepperTesting)) { |
| 1281 return true; | 1282 return true; |
| 1282 } | 1283 } |
| 1283 #endif // !defined(OS_ANDROID) | 1284 #endif // !defined(OS_ANDROID) |
| 1284 return false; | 1285 return false; |
| 1285 } | 1286 } |
| 1286 | 1287 |
| 1287 | 1288 |
| 1288 } // namespace chrome | 1289 } // namespace chrome |
| OLD | NEW |