OLD | NEW |
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 #ifndef CONTENT_BROWSER_MEDIA_SESSION_MEDIA_SESSION_DELEGATE_H_ | 5 #ifndef CONTENT_BROWSER_MEDIA_SESSION_MEDIA_SESSION_DELEGATE_H_ |
6 #define CONTENT_BROWSER_MEDIA_SESSION_MEDIA_SESSION_DELEGATE_H_ | 6 #define CONTENT_BROWSER_MEDIA_SESSION_MEDIA_SESSION_DELEGATE_H_ |
7 | 7 |
8 #include "content/browser/media/session/audio_focus_manager.h" | 8 #include "content/browser/media/session/audio_focus_manager.h" |
9 #include "content/browser/media/session/media_session.h" | 9 #include "content/browser/media/session/media_session.h" |
10 | 10 |
11 namespace content { | 11 namespace content { |
12 | 12 |
13 // MediaSessionDelegate is an interface abstracting audio focus handling for the | 13 // MediaSessionDelegate is an interface abstracting audio focus handling for the |
14 // MediaSession class. | 14 // MediaSession class. |
15 class MediaSessionDelegate { | 15 class MediaSessionDelegate { |
16 public: | 16 public: |
17 // Factory method returning an implementation of MediaSessionDelegate. | 17 // Factory method returning an implementation of MediaSessionDelegate. |
18 static std::unique_ptr<MediaSessionDelegate> Create( | 18 static std::unique_ptr<MediaSessionDelegate> Create( |
19 MediaSession* media_session); | 19 MediaSession* media_session); |
20 | 20 |
21 virtual bool RequestAudioFocus( | 21 virtual bool RequestAudioFocus( |
22 AudioFocusManager::AudioFocusType audio_focus_type) = 0; | 22 AudioFocusManager::AudioFocusType audio_focus_type) = 0; |
23 virtual void AbandonAudioFocus() = 0; | 23 virtual void AbandonAudioFocus() = 0; |
| 24 |
| 25 virtual bool RequestPepperAudioFocus() = 0; |
| 26 virtual void AbandonPepperAudioFocus() = 0; |
24 }; | 27 }; |
25 | 28 |
26 } // namespace content | 29 } // namespace content |
27 | 30 |
28 #endif // CONTENT_BROWSER_MEDIA_SESSION_MEDIA_SESSION_DELEGATE_H_ | 31 #endif // CONTENT_BROWSER_MEDIA_SESSION_MEDIA_SESSION_DELEGATE_H_ |
OLD | NEW |