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

Side by Side Diff: content/browser/media/session/audio_focus_delegate_android.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 unified diff | Download patch
OLDNEW
1 // Copyright 2016 The Chromium Authors. All rights reserved. 1 // Copyright 2016 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/session/audio_focus_delegate_android.h" 5 #include "content/browser/media/session/audio_focus_delegate_android.h"
6 6
7 #include "base/android/context_utils.h" 7 #include "base/android/context_utils.h"
8 #include "base/android/jni_android.h" 8 #include "base/android/jni_android.h"
9 #include "content/browser/media/session/media_session_impl.h"
9 #include "jni/AudioFocusDelegate_jni.h" 10 #include "jni/AudioFocusDelegate_jni.h"
10 11
11 using base::android::JavaParamRef; 12 using base::android::JavaParamRef;
12 13
13 namespace content { 14 namespace content {
14 15
15 // static 16 // static
16 bool AudioFocusDelegateAndroid::Register(JNIEnv* env) { 17 bool AudioFocusDelegateAndroid::Register(JNIEnv* env) {
17 return RegisterNativesImpl(env); 18 return RegisterNativesImpl(env);
18 } 19 }
19 20
20 AudioFocusDelegateAndroid::AudioFocusDelegateAndroid( 21 AudioFocusDelegateAndroid::AudioFocusDelegateAndroid(
21 MediaSession* media_session) 22 MediaSessionImpl* media_session)
22 : media_session_(media_session) {} 23 : media_session_(media_session) {}
23 24
24 AudioFocusDelegateAndroid::~AudioFocusDelegateAndroid() { 25 AudioFocusDelegateAndroid::~AudioFocusDelegateAndroid() {
25 JNIEnv* env = base::android::AttachCurrentThread(); 26 JNIEnv* env = base::android::AttachCurrentThread();
26 DCHECK(env); 27 DCHECK(env);
27 Java_AudioFocusDelegate_tearDown(env, j_media_session_delegate_); 28 Java_AudioFocusDelegate_tearDown(env, j_media_session_delegate_);
28 } 29 }
29 30
30 void AudioFocusDelegateAndroid::Initialize() { 31 void AudioFocusDelegateAndroid::Initialize() {
31 JNIEnv* env = base::android::AttachCurrentThread(); 32 JNIEnv* env = base::android::AttachCurrentThread();
(...skipping 52 matching lines...) Expand 10 before | Expand all | Expand 10 after
84 } 85 }
85 86
86 void AudioFocusDelegateAndroid::RecordSessionDuck( 87 void AudioFocusDelegateAndroid::RecordSessionDuck(
87 JNIEnv*, 88 JNIEnv*,
88 const JavaParamRef<jobject>&) { 89 const JavaParamRef<jobject>&) {
89 media_session_->RecordSessionDuck(); 90 media_session_->RecordSessionDuck();
90 } 91 }
91 92
92 // static 93 // static
93 std::unique_ptr<AudioFocusDelegate> AudioFocusDelegate::Create( 94 std::unique_ptr<AudioFocusDelegate> AudioFocusDelegate::Create(
94 MediaSession* media_session) { 95 MediaSessionImpl* media_session) {
95 AudioFocusDelegateAndroid* delegate = 96 AudioFocusDelegateAndroid* delegate =
96 new AudioFocusDelegateAndroid(media_session); 97 new AudioFocusDelegateAndroid(media_session);
97 delegate->Initialize(); 98 delegate->Initialize();
98 return std::unique_ptr<AudioFocusDelegate>(delegate); 99 return std::unique_ptr<AudioFocusDelegate>(delegate);
99 } 100 }
100 101
101 } // namespace content 102 } // namespace content
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698