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 3481 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3492 | 3492 |
3493 blink::WebUserMediaClient* RenderFrameImpl::userMediaClient() { | 3493 blink::WebUserMediaClient* RenderFrameImpl::userMediaClient() { |
3494 if (!web_user_media_client_) | 3494 if (!web_user_media_client_) |
3495 InitializeUserMediaClient(); | 3495 InitializeUserMediaClient(); |
3496 return web_user_media_client_; | 3496 return web_user_media_client_; |
3497 } | 3497 } |
3498 | 3498 |
3499 blink::WebEncryptedMediaClient* RenderFrameImpl::encryptedMediaClient() { | 3499 blink::WebEncryptedMediaClient* RenderFrameImpl::encryptedMediaClient() { |
3500 if (!web_encrypted_media_client_) { | 3500 if (!web_encrypted_media_client_) { |
3501 web_encrypted_media_client_.reset(new media::WebEncryptedMediaClientImpl( | 3501 web_encrypted_media_client_.reset(new media::WebEncryptedMediaClientImpl( |
| 3502 #if defined(OS_ANDROID) |
| 3503 base::Bind(&RenderFrameImpl::AllowSecureSurfaces, |
| 3504 base::Unretained(this)), |
| 3505 #endif |
3502 GetCdmFactory(), GetMediaPermission())); | 3506 GetCdmFactory(), GetMediaPermission())); |
3503 } | 3507 } |
3504 return web_encrypted_media_client_.get(); | 3508 return web_encrypted_media_client_.get(); |
3505 } | 3509 } |
3506 | 3510 |
3507 blink::WebMIDIClient* RenderFrameImpl::webMIDIClient() { | 3511 blink::WebMIDIClient* RenderFrameImpl::webMIDIClient() { |
3508 if (!midi_dispatcher_) | 3512 if (!midi_dispatcher_) |
3509 midi_dispatcher_ = new MidiDispatcher(this); | 3513 midi_dispatcher_ = new MidiDispatcher(this); |
3510 return midi_dispatcher_; | 3514 return midi_dispatcher_; |
3511 } | 3515 } |
(...skipping 1305 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
4817 } | 4821 } |
4818 | 4822 |
4819 #endif // defined(OS_ANDROID) | 4823 #endif // defined(OS_ANDROID) |
4820 | 4824 |
4821 media::MediaPermission* RenderFrameImpl::GetMediaPermission() { | 4825 media::MediaPermission* RenderFrameImpl::GetMediaPermission() { |
4822 if (!media_permission_dispatcher_) | 4826 if (!media_permission_dispatcher_) |
4823 media_permission_dispatcher_ = new MediaPermissionDispatcher(this); | 4827 media_permission_dispatcher_ = new MediaPermissionDispatcher(this); |
4824 return media_permission_dispatcher_; | 4828 return media_permission_dispatcher_; |
4825 } | 4829 } |
4826 | 4830 |
| 4831 #if defined(OS_ANDROID) |
| 4832 bool RenderFrameImpl::AllowSecureSurfaces() { |
| 4833 content::RendererPreferences& renderer_preferences = |
| 4834 render_view_->renderer_preferences(); |
| 4835 return renderer_prefences.use_video_overlay_for_embedded_encrypted_video; |
| 4836 } |
| 4837 #endif // defined(OS_ANDROID) |
| 4838 |
4827 media::CdmFactory* RenderFrameImpl::GetCdmFactory() { | 4839 media::CdmFactory* RenderFrameImpl::GetCdmFactory() { |
4828 #if defined(ENABLE_BROWSER_CDMS) | 4840 #if defined(ENABLE_BROWSER_CDMS) |
4829 if (!cdm_manager_) | 4841 if (!cdm_manager_) |
4830 cdm_manager_ = new RendererCdmManager(this); | 4842 cdm_manager_ = new RendererCdmManager(this); |
4831 #endif // defined(ENABLE_BROWSER_CDMS) | 4843 #endif // defined(ENABLE_BROWSER_CDMS) |
4832 | 4844 |
4833 if (!cdm_factory_) { | 4845 if (!cdm_factory_) { |
4834 DCHECK(frame_); | 4846 DCHECK(frame_); |
4835 cdm_factory_ = new RenderCdmFactory( | 4847 cdm_factory_ = new RenderCdmFactory( |
4836 #if defined(ENABLE_PEPPER_CDMS) | 4848 #if defined(ENABLE_PEPPER_CDMS) |
4837 base::Bind(&PepperCdmWrapperImpl::Create, frame_), | 4849 base::Bind(&PepperCdmWrapperImpl::Create, frame_), |
4838 #elif defined(ENABLE_BROWSER_CDMS) | 4850 #elif defined(ENABLE_BROWSER_CDMS) |
4839 cdm_manager_, | 4851 cdm_manager_, |
4840 #endif | 4852 #endif |
4841 this); | 4853 this); |
4842 } | 4854 } |
4843 | 4855 |
4844 return cdm_factory_; | 4856 return cdm_factory_; |
4845 } | 4857 } |
4846 | 4858 |
4847 } // namespace content | 4859 } // namespace content |
OLD | NEW |