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 #ifndef CONTENT_RENDERER_RENDER_FRAME_IMPL_H_ | 5 #ifndef CONTENT_RENDERER_RENDER_FRAME_IMPL_H_ |
6 #define CONTENT_RENDERER_RENDER_FRAME_IMPL_H_ | 6 #define CONTENT_RENDERER_RENDER_FRAME_IMPL_H_ |
7 | 7 |
8 #include <stddef.h> | 8 #include <stddef.h> |
9 #include <stdint.h> | 9 #include <stdint.h> |
10 | 10 |
(...skipping 87 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
98 class Point; | 98 class Point; |
99 class Range; | 99 class Range; |
100 class Rect; | 100 class Rect; |
101 } | 101 } |
102 | 102 |
103 namespace media { | 103 namespace media { |
104 class CdmFactory; | 104 class CdmFactory; |
105 class DecoderFactory; | 105 class DecoderFactory; |
106 class MediaPermission; | 106 class MediaPermission; |
107 class MediaServiceProvider; | 107 class MediaServiceProvider; |
| 108 class RemotingController; |
108 class RendererWebMediaPlayerDelegate; | 109 class RendererWebMediaPlayerDelegate; |
109 class SurfaceManager; | 110 class SurfaceManager; |
110 class UrlIndex; | 111 class UrlIndex; |
111 class WebEncryptedMediaClientImpl; | 112 class WebEncryptedMediaClientImpl; |
112 } | 113 } |
113 | 114 |
114 namespace shell { | 115 namespace shell { |
115 class InterfaceRegistry; | 116 class InterfaceRegistry; |
116 class InterfaceProvider; | 117 class InterfaceProvider; |
117 } | 118 } |
(...skipping 895 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1013 | 1014 |
1014 RendererMediaSessionManager* GetMediaSessionManager(); | 1015 RendererMediaSessionManager* GetMediaSessionManager(); |
1015 #endif | 1016 #endif |
1016 | 1017 |
1017 bool AreSecureCodecsSupported(); | 1018 bool AreSecureCodecsSupported(); |
1018 | 1019 |
1019 #if defined(ENABLE_MOJO_MEDIA) | 1020 #if defined(ENABLE_MOJO_MEDIA) |
1020 shell::mojom::InterfaceProvider* GetMediaInterfaceProvider(); | 1021 shell::mojom::InterfaceProvider* GetMediaInterfaceProvider(); |
1021 #endif | 1022 #endif |
1022 | 1023 |
| 1024 #if BUILDFLAG(ENABLE_MEDIA_REMOTING) |
1023 media::mojom::RemoterFactory* GetRemoterFactory(); | 1025 media::mojom::RemoterFactory* GetRemoterFactory(); |
| 1026 #endif |
| 1027 |
1024 media::CdmFactory* GetCdmFactory(); | 1028 media::CdmFactory* GetCdmFactory(); |
1025 media::DecoderFactory* GetDecoderFactory(); | 1029 media::DecoderFactory* GetDecoderFactory(); |
1026 | 1030 |
1027 void RegisterMojoInterfaces(); | 1031 void RegisterMojoInterfaces(); |
1028 | 1032 |
1029 // Connect to an interface provided by the service registry. | 1033 // Connect to an interface provided by the service registry. |
1030 template <typename Interface> | 1034 template <typename Interface> |
1031 void GetInterface(mojo::InterfaceRequest<Interface> request); | 1035 void GetInterface(mojo::InterfaceRequest<Interface> request); |
1032 | 1036 |
1033 // Returns the media delegate for WebMediaPlayer usage. If | 1037 // Returns the media delegate for WebMediaPlayer usage. If |
1034 // |media_player_delegate_| is NULL, one is created. | 1038 // |media_player_delegate_| is NULL, one is created. |
1035 media::RendererWebMediaPlayerDelegate* GetWebMediaPlayerDelegate(); | 1039 media::RendererWebMediaPlayerDelegate* GetWebMediaPlayerDelegate(); |
1036 | 1040 |
1037 // Called to get the WebPlugin to handle find requests in the document. | 1041 // Called to get the WebPlugin to handle find requests in the document. |
1038 // Returns nullptr if there is no such WebPlugin. | 1042 // Returns nullptr if there is no such WebPlugin. |
1039 blink::WebPlugin* GetWebPluginForFind(); | 1043 blink::WebPlugin* GetWebPluginForFind(); |
1040 | 1044 |
1041 // Sends a reply to the current find operation handling if it was a | 1045 // Sends a reply to the current find operation handling if it was a |
1042 // synchronous find request. | 1046 // synchronous find request. |
1043 void SendFindReply(int request_id, | 1047 void SendFindReply(int request_id, |
1044 int match_count, | 1048 int match_count, |
1045 int ordinal, | 1049 int ordinal, |
1046 const blink::WebRect& selection_rect, | 1050 const blink::WebRect& selection_rect, |
1047 bool final_status_update); | 1051 bool final_status_update); |
1048 | 1052 |
1049 void InitializeBlameContext(RenderFrameImpl* parent_frame); | 1053 void InitializeBlameContext(RenderFrameImpl* parent_frame); |
1050 | 1054 |
| 1055 #if BUILDFLAG(ENABLE_MEDIA_REMOTING) |
| 1056 // Creates the RemotingController to control whether to switch to/from media |
| 1057 // remoting from/to local playback. |
| 1058 std::unique_ptr<media::RemotingController> CreateRemotingController(); |
| 1059 #endif |
| 1060 |
1051 // Stores the WebLocalFrame we are associated with. This is null from the | 1061 // Stores the WebLocalFrame we are associated with. This is null from the |
1052 // constructor until BindToWebFrame is called, and it is null after | 1062 // constructor until BindToWebFrame is called, and it is null after |
1053 // frameDetached is called until destruction (which is asynchronous in the | 1063 // frameDetached is called until destruction (which is asynchronous in the |
1054 // case of the main frame, but not subframes). | 1064 // case of the main frame, but not subframes). |
1055 blink::WebLocalFrame* frame_; | 1065 blink::WebLocalFrame* frame_; |
1056 | 1066 |
1057 // Boolean value indicating whether this RenderFrameImpl object is for the | 1067 // Boolean value indicating whether this RenderFrameImpl object is for the |
1058 // main frame or not. It remains accurate during destruction, even when | 1068 // main frame or not. It remains accurate during destruction, even when |
1059 // |frame_| has been invalidated. | 1069 // |frame_| has been invalidated. |
1060 bool is_main_frame_; | 1070 bool is_main_frame_; |
(...skipping 118 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1179 // Manages all media players and sessions in this render frame for | 1189 // Manages all media players and sessions in this render frame for |
1180 // communicating with the real media player and sessions in the | 1190 // communicating with the real media player and sessions in the |
1181 // browser process. It's okay to use raw pointers since they're both | 1191 // browser process. It's okay to use raw pointers since they're both |
1182 // RenderFrameObservers. | 1192 // RenderFrameObservers. |
1183 RendererMediaPlayerManager* media_player_manager_; | 1193 RendererMediaPlayerManager* media_player_manager_; |
1184 RendererMediaSessionManager* media_session_manager_; | 1194 RendererMediaSessionManager* media_session_manager_; |
1185 #endif | 1195 #endif |
1186 | 1196 |
1187 media::SurfaceManager* media_surface_manager_; | 1197 media::SurfaceManager* media_surface_manager_; |
1188 | 1198 |
| 1199 #if BUILDFLAG(ENABLE_MEDIA_REMOTING) |
1189 // Lazy-bound pointer to the RemoterFactory service in the browser | 1200 // Lazy-bound pointer to the RemoterFactory service in the browser |
1190 // process. Always use the GetRemoterFactory() accessor instead of this. | 1201 // process. Always use the GetRemoterFactory() accessor instead of this. |
1191 media::mojom::RemoterFactoryPtr remoter_factory_; | 1202 media::mojom::RemoterFactoryPtr remoter_factory_; |
| 1203 #endif |
1192 | 1204 |
1193 // The CDM and decoder factory attached to this frame, lazily initialized. | 1205 // The CDM and decoder factory attached to this frame, lazily initialized. |
1194 std::unique_ptr<media::CdmFactory> cdm_factory_; | 1206 std::unique_ptr<media::CdmFactory> cdm_factory_; |
1195 std::unique_ptr<media::DecoderFactory> decoder_factory_; | 1207 std::unique_ptr<media::DecoderFactory> decoder_factory_; |
1196 | 1208 |
1197 // Media resource cache, lazily initialized. | 1209 // Media resource cache, lazily initialized. |
1198 linked_ptr<media::UrlIndex> url_index_; | 1210 linked_ptr<media::UrlIndex> url_index_; |
1199 | 1211 |
1200 // The devtools agent for this frame; only created for main frame and | 1212 // The devtools agent for this frame; only created for main frame and |
1201 // local roots. | 1213 // local roots. |
(...skipping 92 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1294 remote_associated_interfaces_; | 1306 remote_associated_interfaces_; |
1295 | 1307 |
1296 base::WeakPtrFactory<RenderFrameImpl> weak_factory_; | 1308 base::WeakPtrFactory<RenderFrameImpl> weak_factory_; |
1297 | 1309 |
1298 DISALLOW_COPY_AND_ASSIGN(RenderFrameImpl); | 1310 DISALLOW_COPY_AND_ASSIGN(RenderFrameImpl); |
1299 }; | 1311 }; |
1300 | 1312 |
1301 } // namespace content | 1313 } // namespace content |
1302 | 1314 |
1303 #endif // CONTENT_RENDERER_RENDER_FRAME_IMPL_H_ | 1315 #endif // CONTENT_RENDERER_RENDER_FRAME_IMPL_H_ |
OLD | NEW |