| Index: content/renderer/render_frame_impl.cc
|
| diff --git a/content/renderer/render_frame_impl.cc b/content/renderer/render_frame_impl.cc
|
| index c56c958e5218569e5c0efe62616cab93b254f0b6..631051072df4475b6f1722f9884c48cb5e35a626 100644
|
| --- a/content/renderer/render_frame_impl.cc
|
| +++ b/content/renderer/render_frame_impl.cc
|
| @@ -169,8 +169,10 @@
|
| #include "content/renderer/android/synchronous_compositor_factory.h"
|
| #include "content/renderer/java/gin_java_bridge_dispatcher.h"
|
| #include "content/renderer/media/android/renderer_media_player_manager.h"
|
| +#include "content/renderer/media/android/renderer_media_session_manager.h"
|
| #include "content/renderer/media/android/stream_texture_factory_impl.h"
|
| #include "content/renderer/media/android/webmediaplayer_android.h"
|
| +#include "content/renderer/media/android/webmediasession_android.h"
|
| #else
|
| #include "cc/blink/context_provider_web_context.h"
|
| #endif
|
| @@ -212,6 +214,7 @@ using blink::WebLocalFrame;
|
| using blink::WebMediaPlayer;
|
| using blink::WebMediaPlayerClient;
|
| using blink::WebMediaPlayerEncryptedMediaClient;
|
| +using blink::WebMediaSession;
|
| using blink::WebNavigationPolicy;
|
| using blink::WebNavigationType;
|
| using blink::WebNode;
|
| @@ -668,6 +671,7 @@ RenderFrameImpl::RenderFrameImpl(const CreateParams& params)
|
| midi_dispatcher_(NULL),
|
| #if defined(OS_ANDROID)
|
| media_player_manager_(NULL),
|
| + media_session_manager_(NULL),
|
| #endif
|
| #if defined(ENABLE_BROWSER_CDMS)
|
| cdm_manager_(NULL),
|
| @@ -2068,6 +2072,16 @@ blink::WebMediaPlayer* RenderFrameImpl::createMediaPlayer(
|
| #endif // defined(OS_ANDROID) && !defined(ENABLE_MEDIA_PIPELINE_ON_ANDROID)
|
| }
|
|
|
| +blink::WebMediaSession* RenderFrameImpl::createMediaSession(
|
| + blink::WebLocalFrame* frame) {
|
| +#if defined(OS_ANDROID)
|
| + return CreateAndroidWebMediaSession();
|
| +#else
|
| + NOTREACHED();
|
| + return nullptr;
|
| +#endif // defined(OS_ANDROID)
|
| +}
|
| +
|
| blink::WebApplicationCacheHost* RenderFrameImpl::createApplicationCacheHost(
|
| blink::WebLocalFrame* frame,
|
| blink::WebApplicationCacheHostClient* client) {
|
| @@ -4992,6 +5006,16 @@ RendererMediaPlayerManager* RenderFrameImpl::GetMediaPlayerManager() {
|
| return media_player_manager_;
|
| }
|
|
|
| +WebMediaSession* RenderFrameImpl::CreateAndroidWebMediaSession() {
|
| + return new WebMediaSessionAndroid(GetMediaSessionManager());
|
| +}
|
| +
|
| +RendererMediaSessionManager* RenderFrameImpl::GetMediaSessionManager() {
|
| + if (!media_session_manager_)
|
| + media_session_manager_ = new RendererMediaSessionManager(this);
|
| + return media_session_manager_;
|
| +}
|
| +
|
| #endif // defined(OS_ANDROID)
|
|
|
| media::MediaPermission* RenderFrameImpl::GetMediaPermission() {
|
|
|