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 | 9 |
10 #include "base/auto_reset.h" | 10 #include "base/auto_reset.h" |
(...skipping 156 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
167 | 167 |
168 #if defined(OS_ANDROID) | 168 #if defined(OS_ANDROID) |
169 #include <cpu-features.h> | 169 #include <cpu-features.h> |
170 | 170 |
171 #include "content/common/gpu/client/context_provider_command_buffer.h" | 171 #include "content/common/gpu/client/context_provider_command_buffer.h" |
172 #include "content/renderer/android/synchronous_compositor_factory.h" | 172 #include "content/renderer/android/synchronous_compositor_factory.h" |
173 #include "content/renderer/java/gin_java_bridge_dispatcher.h" | 173 #include "content/renderer/java/gin_java_bridge_dispatcher.h" |
174 #include "content/renderer/media/android/renderer_media_player_manager.h" | 174 #include "content/renderer/media/android/renderer_media_player_manager.h" |
175 #include "content/renderer/media/android/stream_texture_factory_impl.h" | 175 #include "content/renderer/media/android/stream_texture_factory_impl.h" |
176 #include "content/renderer/media/android/webmediaplayer_android.h" | 176 #include "content/renderer/media/android/webmediaplayer_android.h" |
177 #include "content/renderer/media/android/webmediasession_android.h" | |
177 #else | 178 #else |
178 #include "cc/blink/context_provider_web_context.h" | 179 #include "cc/blink/context_provider_web_context.h" |
179 #include "content/renderer/usb/web_usb_client_impl.h" | 180 #include "content/renderer/usb/web_usb_client_impl.h" |
180 #include "device/devices_app/public/cpp/constants.h" | 181 #include "device/devices_app/public/cpp/constants.h" |
181 #endif | 182 #endif |
182 | 183 |
183 #if defined(ENABLE_PEPPER_CDMS) | 184 #if defined(ENABLE_PEPPER_CDMS) |
184 #include "content/renderer/media/crypto/pepper_cdm_wrapper_impl.h" | 185 #include "content/renderer/media/crypto/pepper_cdm_wrapper_impl.h" |
185 #elif defined(ENABLE_BROWSER_CDMS) | 186 #elif defined(ENABLE_BROWSER_CDMS) |
186 #include "content/renderer/media/crypto/renderer_cdm_manager.h" | 187 #include "content/renderer/media/crypto/renderer_cdm_manager.h" |
(...skipping 23 matching lines...) Expand all Loading... | |
210 using blink::WebElement; | 211 using blink::WebElement; |
211 using blink::WebExternalPopupMenu; | 212 using blink::WebExternalPopupMenu; |
212 using blink::WebExternalPopupMenuClient; | 213 using blink::WebExternalPopupMenuClient; |
213 using blink::WebFrame; | 214 using blink::WebFrame; |
214 using blink::WebHistoryItem; | 215 using blink::WebHistoryItem; |
215 using blink::WebHTTPBody; | 216 using blink::WebHTTPBody; |
216 using blink::WebLocalFrame; | 217 using blink::WebLocalFrame; |
217 using blink::WebMediaPlayer; | 218 using blink::WebMediaPlayer; |
218 using blink::WebMediaPlayerClient; | 219 using blink::WebMediaPlayerClient; |
219 using blink::WebMediaPlayerEncryptedMediaClient; | 220 using blink::WebMediaPlayerEncryptedMediaClient; |
221 using blink::WebMediaSession; | |
220 using blink::WebNavigationPolicy; | 222 using blink::WebNavigationPolicy; |
221 using blink::WebNavigationType; | 223 using blink::WebNavigationType; |
222 using blink::WebNode; | 224 using blink::WebNode; |
223 using blink::WebPluginParams; | 225 using blink::WebPluginParams; |
224 using blink::WebPopupMenuInfo; | 226 using blink::WebPopupMenuInfo; |
225 using blink::WebRange; | 227 using blink::WebRange; |
226 using blink::WebReferrerPolicy; | 228 using blink::WebReferrerPolicy; |
227 using blink::WebScriptSource; | 229 using blink::WebScriptSource; |
228 using blink::WebSearchableFormData; | 230 using blink::WebSearchableFormData; |
229 using blink::WebSecurityOrigin; | 231 using blink::WebSecurityOrigin; |
(...skipping 1884 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
2114 *render_thread->GetAudioHardwareConfig())); | 2116 *render_thread->GetAudioHardwareConfig())); |
2115 } | 2117 } |
2116 #endif // defined(ENABLE_MOJO_MEDIA) | 2118 #endif // defined(ENABLE_MOJO_MEDIA) |
2117 | 2119 |
2118 return new media::WebMediaPlayerImpl( | 2120 return new media::WebMediaPlayerImpl( |
2119 frame, client, encrypted_client, weak_factory_.GetWeakPtr(), | 2121 frame, client, encrypted_client, weak_factory_.GetWeakPtr(), |
2120 media_renderer_factory.Pass(), GetCdmFactory(), params); | 2122 media_renderer_factory.Pass(), GetCdmFactory(), params); |
2121 #endif // defined(OS_ANDROID) && !defined(ENABLE_MEDIA_PIPELINE_ON_ANDROID) | 2123 #endif // defined(OS_ANDROID) && !defined(ENABLE_MEDIA_PIPELINE_ON_ANDROID) |
2122 } | 2124 } |
2123 | 2125 |
2126 WebMediaSession* RenderFrameImpl::createMediaSession( | |
2127 blink::WebLocalFrame* frame) { | |
2128 #if defined(OS_ANDROID) | |
2129 return CreateAndroidWebMediaSession(); | |
2130 #else | |
2131 return nullptr; | |
2132 #endif // defined(OS_ANDROID) | |
2133 } | |
2134 | |
2124 blink::WebApplicationCacheHost* RenderFrameImpl::createApplicationCacheHost( | 2135 blink::WebApplicationCacheHost* RenderFrameImpl::createApplicationCacheHost( |
2125 blink::WebLocalFrame* frame, | 2136 blink::WebLocalFrame* frame, |
2126 blink::WebApplicationCacheHostClient* client) { | 2137 blink::WebApplicationCacheHostClient* client) { |
2127 if (!frame || !frame->view()) | 2138 if (!frame || !frame->view()) |
2128 return NULL; | 2139 return NULL; |
2129 DCHECK(!frame_ || frame_ == frame); | 2140 DCHECK(!frame_ || frame_ == frame); |
2130 return new RendererWebApplicationCacheHostImpl( | 2141 return new RendererWebApplicationCacheHostImpl( |
2131 RenderViewImpl::FromWebView(frame->view()), client, | 2142 RenderViewImpl::FromWebView(frame->view()), client, |
2132 RenderThreadImpl::current()->appcache_dispatcher()->backend_proxy()); | 2143 RenderThreadImpl::current()->appcache_dispatcher()->backend_proxy()); |
2133 } | 2144 } |
(...skipping 2909 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
5043 return new WebMediaPlayerAndroid( | 5054 return new WebMediaPlayerAndroid( |
5044 frame_, client, encrypted_client, weak_factory_.GetWeakPtr(), | 5055 frame_, client, encrypted_client, weak_factory_.GetWeakPtr(), |
5045 GetMediaPlayerManager(), GetCdmFactory(), stream_texture_factory, params); | 5056 GetMediaPlayerManager(), GetCdmFactory(), stream_texture_factory, params); |
5046 } | 5057 } |
5047 | 5058 |
5048 RendererMediaPlayerManager* RenderFrameImpl::GetMediaPlayerManager() { | 5059 RendererMediaPlayerManager* RenderFrameImpl::GetMediaPlayerManager() { |
5049 if (!media_player_manager_) | 5060 if (!media_player_manager_) |
5050 media_player_manager_ = new RendererMediaPlayerManager(this); | 5061 media_player_manager_ = new RendererMediaPlayerManager(this); |
5051 return media_player_manager_; | 5062 return media_player_manager_; |
5052 } | 5063 } |
5064 | |
5065 WebMediaSession* RenderFrameImpl::CreateAndroidWebMediaSession() { | |
mlamouri (slow - plz ping)
2015/09/28 15:16:03
Do we need this level of indirection?
davve
2015/10/06 12:05:13
Probably not, no. If we ever get CreateAndroidWebM
| |
5066 return new WebMediaSessionAndroid(); | |
5067 } | |
5068 | |
5053 #endif // defined(OS_ANDROID) | 5069 #endif // defined(OS_ANDROID) |
5054 | 5070 |
5055 scoped_ptr<media::MediaPermission> RenderFrameImpl::CreateMediaPermissionProxy( | 5071 scoped_ptr<media::MediaPermission> RenderFrameImpl::CreateMediaPermissionProxy( |
5056 scoped_refptr<base::SingleThreadTaskRunner> caller_task_runner) { | 5072 scoped_refptr<base::SingleThreadTaskRunner> caller_task_runner) { |
5057 MediaPermissionDispatcherImpl* media_permission = | 5073 MediaPermissionDispatcherImpl* media_permission = |
5058 static_cast<MediaPermissionDispatcherImpl*>(GetMediaPermission()); | 5074 static_cast<MediaPermissionDispatcherImpl*>(GetMediaPermission()); |
5059 return media_permission->CreateProxy(caller_task_runner).Pass(); | 5075 return media_permission->CreateProxy(caller_task_runner).Pass(); |
5060 } | 5076 } |
5061 | 5077 |
5062 media::MediaPermission* RenderFrameImpl::GetMediaPermission() { | 5078 media::MediaPermission* RenderFrameImpl::GetMediaPermission() { |
(...skipping 75 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
5138 mojo::ServiceProviderPtr service_provider; | 5154 mojo::ServiceProviderPtr service_provider; |
5139 mojo::URLRequestPtr request(mojo::URLRequest::New()); | 5155 mojo::URLRequestPtr request(mojo::URLRequest::New()); |
5140 request->url = mojo::String::From(url); | 5156 request->url = mojo::String::From(url); |
5141 mojo_shell_->ConnectToApplication(request.Pass(), GetProxy(&service_provider), | 5157 mojo_shell_->ConnectToApplication(request.Pass(), GetProxy(&service_provider), |
5142 nullptr, nullptr, | 5158 nullptr, nullptr, |
5143 base::Bind(&OnGotContentHandlerID)); | 5159 base::Bind(&OnGotContentHandlerID)); |
5144 return service_provider.Pass(); | 5160 return service_provider.Pass(); |
5145 } | 5161 } |
5146 | 5162 |
5147 } // namespace content | 5163 } // namespace content |
OLD | NEW |