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

Unified Diff: content/browser/media/session/audio_focus_manager.cc

Issue 2453623003: Decouple MediaSession messages from WebContents (full patch) (Closed)
Patch Set: nit Created 4 years, 1 month 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: content/browser/media/session/audio_focus_manager.cc
diff --git a/content/browser/media/session/audio_focus_manager.cc b/content/browser/media/session/audio_focus_manager.cc
index cad3c5e292356e3b977cf00304d58d56dadd6520..48f6dcce96201e79c440fcdea7dcc30af6d539f0 100644
--- a/content/browser/media/session/audio_focus_manager.cc
+++ b/content/browser/media/session/audio_focus_manager.cc
@@ -5,7 +5,7 @@
#include "content/browser/media/session/audio_focus_manager.h"
#include "base/memory/ptr_util.h"
-#include "content/browser/media/session/media_session.h"
+#include "content/browser/media/session/media_session_impl.h"
#include "content/public/browser/web_contents.h"
namespace content {
@@ -15,7 +15,7 @@ AudioFocusManager* AudioFocusManager::GetInstance() {
return base::Singleton<AudioFocusManager>::get();
}
-void AudioFocusManager::RequestAudioFocus(MediaSession* media_session,
+void AudioFocusManager::RequestAudioFocus(MediaSessionImpl* media_session,
AudioFocusType type) {
if (!audio_focus_stack_.empty() &&
audio_focus_stack_.back() == media_session &&
@@ -28,9 +28,10 @@ void AudioFocusManager::RequestAudioFocus(MediaSession* media_session,
MaybeRemoveFocusEntry(media_session);
- // TODO(zqzhang): It seems like MediaSession is exposed to AudioFocusManager
+ // TODO(zqzhang): It seems like MediaSessionImpl is exposed to
+ // AudioFocusManager
// too much. Maybe it's better to do some abstraction and refactoring to clean
- // up the relation between AudioFocusManager and MediaSession.
+ // up the relation between AudioFocusManager and MediaSessionImpl.
// See https://crbug.com/651069
if (type == AudioFocusType::GainTransientMayDuck) {
for (const auto old_session : audio_focus_stack_) {
@@ -42,7 +43,7 @@ void AudioFocusManager::RequestAudioFocus(MediaSession* media_session,
if (old_session->HasPepper())
old_session->StartDucking();
else
- old_session->Suspend(MediaSession::SuspendType::SYSTEM);
+ old_session->Suspend(MediaSessionImpl::SuspendType::SYSTEM);
}
}
}
@@ -51,7 +52,7 @@ void AudioFocusManager::RequestAudioFocus(MediaSession* media_session,
audio_focus_stack_.back()->StopDucking();
}
-void AudioFocusManager::AbandonAudioFocus(MediaSession* media_session) {
+void AudioFocusManager::AbandonAudioFocus(MediaSessionImpl* media_session) {
if (audio_focus_stack_.empty())
return;
@@ -64,20 +65,22 @@ void AudioFocusManager::AbandonAudioFocus(MediaSession* media_session) {
if (audio_focus_stack_.empty())
return;
- // Allow the top-most MediaSession having Pepper to unduck pepper even if it's
+ // Allow the top-most MediaSessionImpl having Pepper to unduck pepper even if
+ // it's
// not active.
for (auto iter = audio_focus_stack_.rbegin();
iter != audio_focus_stack_.rend(); ++iter) {
if (!(*iter)->HasPepper())
continue;
- MediaSession* pepper_session = *iter;
+ MediaSessionImpl* pepper_session = *iter;
pepper_session->StopDucking();
MaybeRemoveFocusEntry(pepper_session);
audio_focus_stack_.push_back(pepper_session);
return;
}
- // Only try to unduck the new MediaSession on top. The session might be still
+ // Only try to unduck the new MediaSessionImpl on top. The session might be
+ // still
// inactive but it will not be resumed (so it doesn't surprise the user).
audio_focus_stack_.back()->StopDucking();
}
@@ -86,7 +89,7 @@ AudioFocusManager::AudioFocusManager() = default;
AudioFocusManager::~AudioFocusManager() = default;
-void AudioFocusManager::MaybeRemoveFocusEntry(MediaSession* media_session) {
+void AudioFocusManager::MaybeRemoveFocusEntry(MediaSessionImpl* media_session) {
audio_focus_stack_.remove(media_session);
}
« no previous file with comments | « content/browser/media/session/audio_focus_manager.h ('k') | content/browser/media/session/audio_focus_manager_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698