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/browser/media/android/browser_media_player_manager.h" | 5 #include "content/browser/media/android/browser_media_player_manager.h" |
6 | 6 |
7 #include "base/android/scoped_java_ref.h" | 7 #include "base/android/scoped_java_ref.h" |
8 #include "base/command_line.h" | 8 #include "base/command_line.h" |
9 #include "content/browser/android/content_view_core_impl.h" | 9 #include "content/browser/android/content_view_core_impl.h" |
10 #include "content/browser/media/android/browser_demuxer_android.h" | 10 #include "content/browser/media/android/browser_demuxer_android.h" |
(...skipping 181 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
192 if (player) { | 192 if (player) { |
193 // TODO(kbalazs): if |fullscreen_player_is_released_| is true | 193 // TODO(kbalazs): if |fullscreen_player_is_released_| is true |
194 // at this point, player->GetCurrentTime() will be wrong until | 194 // at this point, player->GetCurrentTime() will be wrong until |
195 // FullscreenPlayerPlay (http://crbug.com/322798). | 195 // FullscreenPlayerPlay (http://crbug.com/322798). |
196 OnSeekRequest(fullscreen_player_id_, | 196 OnSeekRequest(fullscreen_player_id_, |
197 base::TimeDelta::FromMilliseconds(msec)); | 197 base::TimeDelta::FromMilliseconds(msec)); |
198 } | 198 } |
199 } | 199 } |
200 | 200 |
201 void BrowserMediaPlayerManager::ExitFullscreen(bool release_media_player) { | 201 void BrowserMediaPlayerManager::ExitFullscreen(bool release_media_player) { |
202 if (WebContentsDelegate* delegate = web_contents_->GetDelegate()) | |
203 delegate->ToggleFullscreenModeForTab(web_contents_, false); | |
204 if (!CommandLine::ForCurrentProcess()->HasSwitch( | 202 if (!CommandLine::ForCurrentProcess()->HasSwitch( |
205 switches::kDisableOverlayFullscreenVideoSubtitle)) { | 203 switches::kDisableOverlayFullscreenVideoSubtitle)) { |
| 204 if (WebContentsDelegate* delegate = web_contents_->GetDelegate()) |
| 205 delegate->ToggleFullscreenModeForTab(web_contents_, false); |
206 if (RenderWidgetHostViewAndroid* view_android = | 206 if (RenderWidgetHostViewAndroid* view_android = |
207 static_cast<RenderWidgetHostViewAndroid*>( | 207 static_cast<RenderWidgetHostViewAndroid*>( |
208 web_contents_->GetRenderWidgetHostView())) { | 208 web_contents_->GetRenderWidgetHostView())) { |
209 view_android->SetOverlayVideoMode(false); | 209 view_android->SetOverlayVideoMode(false); |
210 } | 210 } |
211 } | 211 } |
212 | 212 |
213 Send(new MediaPlayerMsg_DidExitFullscreen( | 213 Send(new MediaPlayerMsg_DidExitFullscreen( |
214 routing_id(), fullscreen_player_id_)); | 214 routing_id(), fullscreen_player_id_)); |
215 video_view_.reset(); | 215 video_view_.reset(); |
(...skipping 28 matching lines...) Expand all Loading... |
244 player->player_id())); | 244 player->player_id())); |
245 if (CommandLine::ForCurrentProcess()->HasSwitch( | 245 if (CommandLine::ForCurrentProcess()->HasSwitch( |
246 switches::kDisableOverlayFullscreenVideoSubtitle)) { | 246 switches::kDisableOverlayFullscreenVideoSubtitle)) { |
247 return; | 247 return; |
248 } | 248 } |
249 if (RenderWidgetHostViewAndroid* view_android = | 249 if (RenderWidgetHostViewAndroid* view_android = |
250 static_cast<RenderWidgetHostViewAndroid*>( | 250 static_cast<RenderWidgetHostViewAndroid*>( |
251 web_contents_->GetRenderWidgetHostView())) { | 251 web_contents_->GetRenderWidgetHostView())) { |
252 view_android->SetOverlayVideoMode(true); | 252 view_android->SetOverlayVideoMode(true); |
253 } | 253 } |
| 254 if (WebContentsDelegate* delegate = web_contents_->GetDelegate()) |
| 255 delegate->ToggleFullscreenModeForTab(web_contents_, true); |
254 } | 256 } |
255 | 257 |
256 void BrowserMediaPlayerManager::OnMediaMetadataChanged( | 258 void BrowserMediaPlayerManager::OnMediaMetadataChanged( |
257 int player_id, base::TimeDelta duration, int width, int height, | 259 int player_id, base::TimeDelta duration, int width, int height, |
258 bool success) { | 260 bool success) { |
259 Send(new MediaPlayerMsg_MediaMetadataChanged( | 261 Send(new MediaPlayerMsg_MediaMetadataChanged( |
260 routing_id(), player_id, duration, width, height, success)); | 262 routing_id(), player_id, duration, width, height, success)); |
261 if (fullscreen_player_id_ == player_id) | 263 if (fullscreen_player_id_ == player_id) |
262 video_view_->UpdateMediaMetadata(); | 264 video_view_->UpdateMediaMetadata(); |
263 } | 265 } |
(...skipping 612 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
876 #if defined(VIDEO_HOLE) | 878 #if defined(VIDEO_HOLE) |
877 MediaPlayerAndroid* player = GetPlayer(player_id); | 879 MediaPlayerAndroid* player = GetPlayer(player_id); |
878 if (player && player->IsSurfaceInUse()) | 880 if (player && player->IsSurfaceInUse()) |
879 return; | 881 return; |
880 if (external_video_surface_container_) | 882 if (external_video_surface_container_) |
881 external_video_surface_container_->ReleaseExternalVideoSurface(player_id); | 883 external_video_surface_container_->ReleaseExternalVideoSurface(player_id); |
882 #endif // defined(VIDEO_HOLE) | 884 #endif // defined(VIDEO_HOLE) |
883 } | 885 } |
884 | 886 |
885 } // namespace content | 887 } // namespace content |
OLD | NEW |