Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(33)

Side by Side Diff: content/browser/media/android/browser_media_player_manager.cc

Issue 292573004: Don't use webmediaplayer to FullscreenController about fullscreen change (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: rebase Created 6 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
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 146 matching lines...) Expand 10 before | Expand all | Expand 10 after
157 if (player) { 157 if (player) {
158 // TODO(kbalazs): if |fullscreen_player_is_released_| is true 158 // TODO(kbalazs): if |fullscreen_player_is_released_| is true
159 // at this point, player->GetCurrentTime() will be wrong until 159 // at this point, player->GetCurrentTime() will be wrong until
160 // FullscreenPlayerPlay (http://crbug.com/322798). 160 // FullscreenPlayerPlay (http://crbug.com/322798).
161 OnSeekRequest(fullscreen_player_id_, 161 OnSeekRequest(fullscreen_player_id_,
162 base::TimeDelta::FromMilliseconds(msec)); 162 base::TimeDelta::FromMilliseconds(msec));
163 } 163 }
164 } 164 }
165 165
166 void BrowserMediaPlayerManager::ExitFullscreen(bool release_media_player) { 166 void BrowserMediaPlayerManager::ExitFullscreen(bool release_media_player) {
167 if (WebContentsDelegate* delegate = web_contents_->GetDelegate())
168 delegate->ToggleFullscreenModeForTab(web_contents_, false);
167 if (!CommandLine::ForCurrentProcess()->HasSwitch( 169 if (!CommandLine::ForCurrentProcess()->HasSwitch(
168 switches::kDisableOverlayFullscreenVideoSubtitle)) { 170 switches::kDisableOverlayFullscreenVideoSubtitle)) {
169 if (WebContentsDelegate* delegate = web_contents_->GetDelegate())
170 delegate->ToggleFullscreenModeForTab(web_contents_, false);
171 if (RenderWidgetHostViewAndroid* view_android = 171 if (RenderWidgetHostViewAndroid* view_android =
172 static_cast<RenderWidgetHostViewAndroid*>( 172 static_cast<RenderWidgetHostViewAndroid*>(
173 web_contents_->GetRenderWidgetHostView())) { 173 web_contents_->GetRenderWidgetHostView())) {
174 view_android->SetOverlayVideoMode(false); 174 view_android->SetOverlayVideoMode(false);
175 } 175 }
176 } 176 }
177 177
178 Send( 178 Send(
179 new MediaPlayerMsg_DidExitFullscreen(RoutingID(), fullscreen_player_id_)); 179 new MediaPlayerMsg_DidExitFullscreen(RoutingID(), fullscreen_player_id_));
180 video_view_.reset(); 180 video_view_.reset();
(...skipping 27 matching lines...) Expand all
208 Send(new MediaPlayerMsg_DidEnterFullscreen(RoutingID(), player->player_id())); 208 Send(new MediaPlayerMsg_DidEnterFullscreen(RoutingID(), player->player_id()));
209 if (CommandLine::ForCurrentProcess()->HasSwitch( 209 if (CommandLine::ForCurrentProcess()->HasSwitch(
210 switches::kDisableOverlayFullscreenVideoSubtitle)) { 210 switches::kDisableOverlayFullscreenVideoSubtitle)) {
211 return; 211 return;
212 } 212 }
213 if (RenderWidgetHostViewAndroid* view_android = 213 if (RenderWidgetHostViewAndroid* view_android =
214 static_cast<RenderWidgetHostViewAndroid*>( 214 static_cast<RenderWidgetHostViewAndroid*>(
215 web_contents_->GetRenderWidgetHostView())) { 215 web_contents_->GetRenderWidgetHostView())) {
216 view_android->SetOverlayVideoMode(true); 216 view_android->SetOverlayVideoMode(true);
217 } 217 }
218 if (WebContentsDelegate* delegate = web_contents_->GetDelegate())
219 delegate->ToggleFullscreenModeForTab(web_contents_, true);
220 } 218 }
221 219
222 void BrowserMediaPlayerManager::OnMediaMetadataChanged( 220 void BrowserMediaPlayerManager::OnMediaMetadataChanged(
223 int player_id, base::TimeDelta duration, int width, int height, 221 int player_id, base::TimeDelta duration, int width, int height,
224 bool success) { 222 bool success) {
225 Send(new MediaPlayerMsg_MediaMetadataChanged( 223 Send(new MediaPlayerMsg_MediaMetadataChanged(
226 RoutingID(), player_id, duration, width, height, success)); 224 RoutingID(), player_id, duration, width, height, success));
227 if (fullscreen_player_id_ == player_id) 225 if (fullscreen_player_id_ == player_id)
228 video_view_->UpdateMediaMetadata(); 226 video_view_->UpdateMediaMetadata();
229 } 227 }
(...skipping 338 matching lines...) Expand 10 before | Expand all | Expand 10 after
568 #if defined(VIDEO_HOLE) 566 #if defined(VIDEO_HOLE)
569 MediaPlayerAndroid* player = GetPlayer(player_id); 567 MediaPlayerAndroid* player = GetPlayer(player_id);
570 if (player && player->IsSurfaceInUse()) 568 if (player && player->IsSurfaceInUse())
571 return; 569 return;
572 if (external_video_surface_container_) 570 if (external_video_surface_container_)
573 external_video_surface_container_->ReleaseExternalVideoSurface(player_id); 571 external_video_surface_container_->ReleaseExternalVideoSurface(player_id);
574 #endif // defined(VIDEO_HOLE) 572 #endif // defined(VIDEO_HOLE)
575 } 573 }
576 574
577 } // namespace content 575 } // namespace content
OLDNEW
« no previous file with comments | « android_webview/native/aw_web_contents_delegate.cc ('k') | content/renderer/media/android/webmediaplayer_android.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698