Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 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 "content/renderer/render_frame_impl.h" | 5 #include "content/renderer/render_frame_impl.h" |
| 6 | 6 |
| 7 #include <map> | 7 #include <map> |
| 8 #include <string> | 8 #include <string> |
| 9 #include <utility> | 9 #include <utility> |
| 10 #include <vector> | 10 #include <vector> |
| (...skipping 244 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 255 #include "media/renderers/default_renderer_factory.h" | 255 #include "media/renderers/default_renderer_factory.h" |
| 256 #endif | 256 #endif |
| 257 | 257 |
| 258 #if defined(ENABLE_MOJO_AUDIO_DECODER) || defined(ENABLE_MOJO_VIDEO_DECODER) | 258 #if defined(ENABLE_MOJO_AUDIO_DECODER) || defined(ENABLE_MOJO_VIDEO_DECODER) |
| 259 #include "media/mojo/clients/mojo_decoder_factory.h" // nogncheck | 259 #include "media/mojo/clients/mojo_decoder_factory.h" // nogncheck |
| 260 #endif | 260 #endif |
| 261 | 261 |
| 262 #if BUILDFLAG(ENABLE_MEDIA_REMOTING) | 262 #if BUILDFLAG(ENABLE_MEDIA_REMOTING) |
| 263 #include "media/remoting/remoting_cdm_controller.h" // nogncheck | 263 #include "media/remoting/remoting_cdm_controller.h" // nogncheck |
| 264 #include "media/remoting/remoting_cdm_factory.h" // nogncheck | 264 #include "media/remoting/remoting_cdm_factory.h" // nogncheck |
| 265 #include "media/remoting/remoting_renderer_controller.h" // nogncheck | |
| 266 #include "media/remoting/remoting_renderer_factory.h" // nogncheck | 265 #include "media/remoting/remoting_renderer_factory.h" // nogncheck |
| 267 #include "media/remoting/remoting_sink_observer.h" // nogncheck | 266 #include "media/remoting/remoting_sink_observer.h" // nogncheck |
| 268 #endif | 267 #endif |
| 269 | 268 |
| 270 using base::Time; | 269 using base::Time; |
| 271 using base::TimeDelta; | 270 using base::TimeDelta; |
| 272 using blink::WebCachePolicy; | 271 using blink::WebCachePolicy; |
| 273 using blink::WebContentDecryptionModule; | 272 using blink::WebContentDecryptionModule; |
| 274 using blink::WebContextMenuData; | 273 using blink::WebContextMenuData; |
| 275 using blink::WebCString; | 274 using blink::WebCString; |
| (...skipping 2622 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 2898 | 2897 |
| 2899 #if defined(OS_ANDROID) // WMPI_CAST | 2898 #if defined(OS_ANDROID) // WMPI_CAST |
| 2900 media_player->SetMediaPlayerManager(GetMediaPlayerManager()); | 2899 media_player->SetMediaPlayerManager(GetMediaPlayerManager()); |
| 2901 media_player->SetDeviceScaleFactor(render_view_->GetDeviceScaleFactor()); | 2900 media_player->SetDeviceScaleFactor(render_view_->GetDeviceScaleFactor()); |
| 2902 media_player->SetUseFallbackPath(use_fallback_path); | 2901 media_player->SetUseFallbackPath(use_fallback_path); |
| 2903 #endif // defined(OS_ANDROID) | 2902 #endif // defined(OS_ANDROID) |
| 2904 | 2903 |
| 2905 #if BUILDFLAG(ENABLE_MEDIA_REMOTING) | 2904 #if BUILDFLAG(ENABLE_MEDIA_REMOTING) |
| 2906 remoting_controller_ptr->SetSwitchRendererCallback(base::Bind( | 2905 remoting_controller_ptr->SetSwitchRendererCallback(base::Bind( |
| 2907 &media::WebMediaPlayerImpl::ScheduleRestart, media_player->AsWeakPtr())); | 2906 &media::WebMediaPlayerImpl::ScheduleRestart, media_player->AsWeakPtr())); |
| 2907 remoting_controller_ptr->SetDownloadPosterCallback( | |
| 2908 base::Bind(&RenderFrameImpl::DownloadPoster, weak_factory_.GetWeakPtr())); | |
| 2908 #endif | 2909 #endif |
| 2909 return media_player; | 2910 return media_player; |
| 2910 } | 2911 } |
| 2911 | 2912 |
| 2912 blink::WebApplicationCacheHost* RenderFrameImpl::createApplicationCacheHost( | 2913 blink::WebApplicationCacheHost* RenderFrameImpl::createApplicationCacheHost( |
| 2913 blink::WebApplicationCacheHostClient* client) { | 2914 blink::WebApplicationCacheHostClient* client) { |
| 2914 if (!frame_ || !frame_->view()) | 2915 if (!frame_ || !frame_->view()) |
| 2915 return NULL; | 2916 return NULL; |
| 2916 return new RendererWebApplicationCacheHostImpl( | 2917 return new RendererWebApplicationCacheHostImpl( |
| 2917 RenderViewImpl::FromWebView(frame_->view()), client, | 2918 RenderViewImpl::FromWebView(frame_->view()), client, |
| (...skipping 3741 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 6659 // And then the mouse event is forwarded to blink, which dispatches it to the | 6660 // And then the mouse event is forwarded to blink, which dispatches it to the |
| 6660 // event target. Potentially a Pepper plugin will receive the event. | 6661 // event target. Potentially a Pepper plugin will receive the event. |
| 6661 // In order to tell whether a plugin gets the last mouse event and which it | 6662 // In order to tell whether a plugin gets the last mouse event and which it |
| 6662 // is, we set |pepper_last_mouse_event_target_| to null here. If a plugin gets | 6663 // is, we set |pepper_last_mouse_event_target_| to null here. If a plugin gets |
| 6663 // the event, it will notify us via DidReceiveMouseEvent() and set itself as | 6664 // the event, it will notify us via DidReceiveMouseEvent() and set itself as |
| 6664 // |pepper_last_mouse_event_target_|. | 6665 // |pepper_last_mouse_event_target_|. |
| 6665 pepper_last_mouse_event_target_ = nullptr; | 6666 pepper_last_mouse_event_target_ = nullptr; |
| 6666 #endif | 6667 #endif |
| 6667 } | 6668 } |
| 6668 | 6669 |
| 6670 #if BUILDFLAG(ENABLE_MEDIA_REMOTING) | |
| 6671 void RenderFrameImpl::DownloadPoster( | |
| 6672 const GURL& url, | |
| 6673 const media::RemotingRendererController::PosterDownloadedCallback& cb) { | |
| 6674 if (cb.is_null()) | |
| 6675 return; | |
| 6676 | |
| 6677 if (!poster_image_downloader_) | |
| 6678 poster_image_downloader_.reset(new ImageDownloaderImpl(this)); | |
| 6679 poster_image_downloader_->DownloadImage( | |
| 6680 url, false, 1920 * 1920, false, | |
|
miu
2016/11/29 22:56:08
1920*1920 seems arbitrary, and some poster images
xjz
2016/12/02 19:23:10
Not applicable.
| |
| 6681 base::Bind(&RenderFrameImpl::PosterDownloaded, weak_factory_.GetWeakPtr(), | |
| 6682 cb)); | |
| 6683 } | |
| 6684 | |
| 6685 void RenderFrameImpl::PosterDownloaded( | |
| 6686 const media::RemotingRendererController::PosterDownloadedCallback& cb, | |
| 6687 int32_t http_status_code, | |
| 6688 const std::vector<SkBitmap>& images, | |
| 6689 const std::vector<gfx::Size>& sizes) { | |
| 6690 DCHECK(!cb.is_null()); | |
| 6691 cb.Run(images[0]); | |
| 6692 } | |
| 6693 #endif | |
| 6694 | |
| 6669 } // namespace content | 6695 } // namespace content |
| OLD | NEW |