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

Unified Diff: media/blink/webmediaplayer_impl.cc

Issue 2658513003: [Cleanup] Rename Hidden to Background in WMPI.
Patch Set: Created 3 years, 11 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 side-by-side diff with in-line comments
Download patch
Index: media/blink/webmediaplayer_impl.cc
diff --git a/media/blink/webmediaplayer_impl.cc b/media/blink/webmediaplayer_impl.cc
index 0ab7b54d2cfdf4ee3dc09c257d782eea66e0c312..4f1d616976d4d705ff5075cb2d0d38a6d46b6158 100644
--- a/media/blink/webmediaplayer_impl.cc
+++ b/media/blink/webmediaplayer_impl.cc
@@ -1405,10 +1405,8 @@ void WebMediaPlayerImpl::OnFrameHidden() {
if (watch_time_reporter_)
watch_time_reporter_->OnHidden();
- // OnFrameHidden() can be called when frame is closed, then IsHidden() will
- // return false, so check explicitly.
- if (IsHidden()) {
- if (ShouldPauseVideoWhenHidden()) {
+ if (IsBackground()) {
+ if (ShouldPauseVideoWhenBackground()) {
PauseVideoIfNeeded();
return;
} else {
@@ -1804,7 +1802,7 @@ void WebMediaPlayerImpl::UpdatePlayState() {
#endif
bool is_suspended = pipeline_controller_.IsSuspended();
- bool is_backgrounded = IsBackgroundedSuspendEnabled() && IsHidden();
+ bool is_backgrounded = IsBackgroundedSuspendEnabled() && IsBackground();
PlayState state = UpdatePlayState_ComputePlayState(
is_remote, is_streaming, is_suspended, is_backgrounded);
SetDelegateState(state.delegate_state, state.is_idle);
@@ -2103,9 +2101,12 @@ void WebMediaPlayerImpl::CreateWatchTimeReporter() {
watch_time_reporter_->OnShown();
}
-bool WebMediaPlayerImpl::IsHidden() const {
+bool WebMediaPlayerImpl::IsBackground() const {
DCHECK(main_task_runner_->BelongsToCurrentThread());
+ // Nothing related to the media being in the background should matter if the
+ // frame is closed. However, the delegate might call OnFrameHidden() when
+ // closed so specifically exclude this case.
return delegate_->IsFrameHidden() && !delegate_->IsFrameClosed();
}
@@ -2123,7 +2124,7 @@ void WebMediaPlayerImpl::ActivateViewportIntersectionMonitoring(bool activate) {
client_->activateViewportIntersectionMonitoring(activate);
}
-bool WebMediaPlayerImpl::ShouldPauseVideoWhenHidden() const {
+bool WebMediaPlayerImpl::ShouldPauseVideoWhenBackground() const {
#if !defined(OS_ANDROID)
// On desktop, this behavior is behind the feature flag.
if (!IsBackgroundVideoTrackOptimizationEnabled())
@@ -2134,7 +2135,7 @@ bool WebMediaPlayerImpl::ShouldPauseVideoWhenHidden() const {
return !hasAudio() && IsBackgroundOptimizationCandidate();
}
-bool WebMediaPlayerImpl::ShouldDisableVideoWhenHidden() const {
+bool WebMediaPlayerImpl::ShouldDisableVideoWhenBackground() const {
// This optimization is behind the flag on all platforms.
if (!IsBackgroundVideoTrackOptimizationEnabled())
return false;
@@ -2174,8 +2175,8 @@ bool WebMediaPlayerImpl::IsBackgroundOptimizationCandidate() const {
}
void WebMediaPlayerImpl::UpdateBackgroundVideoOptimizationState() {
- if (IsHidden()) {
- if (ShouldPauseVideoWhenHidden())
+ if (IsBackground()) {
+ if (ShouldPauseVideoWhenBackground())
PauseVideoIfNeeded();
else
DisableVideoTrackIfNeeded();
@@ -2185,7 +2186,7 @@ void WebMediaPlayerImpl::UpdateBackgroundVideoOptimizationState() {
}
void WebMediaPlayerImpl::PauseVideoIfNeeded() {
- DCHECK(IsHidden());
+ DCHECK(IsBackground());
// Don't pause video while the pipeline is stopped, resuming or seeking.
// Also if the video is paused already.
@@ -2214,13 +2215,13 @@ void WebMediaPlayerImpl::EnableVideoTrackIfNeeded() {
}
void WebMediaPlayerImpl::DisableVideoTrackIfNeeded() {
- DCHECK(IsHidden());
+ DCHECK(IsBackground());
// Don't change video track while the pipeline is resuming or seeking.
if (is_pipeline_resuming_ || seeking_)
return;
- if (!video_track_disabled_ && ShouldDisableVideoWhenHidden()) {
+ if (!video_track_disabled_ && ShouldDisableVideoWhenBackground()) {
video_track_disabled_ = true;
selectedVideoTrackChanged(nullptr);
}

Powered by Google App Engine
This is Rietveld 408576698