OLD | NEW |
---|---|
1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 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_UMA_HELPER_H_ | 5 #ifndef CONTENT_BROWSER_MEDIA_SESSION_MEDIA_SESSION_UMA_HELPER_H_ |
6 #define CONTENT_BROWSER_MEDIA_SESSION_MEDIA_SESSION_UMA_HELPER_H_ | 6 #define CONTENT_BROWSER_MEDIA_SESSION_MEDIA_SESSION_UMA_HELPER_H_ |
7 | 7 |
8 #include <memory> | 8 #include <memory> |
9 | 9 |
10 #include "base/time/clock.h" | 10 #include "base/time/clock.h" |
(...skipping 11 matching lines...) Expand all Loading... | |
22 // be appended only and must be added before |Count|. | 22 // be appended only and must be added before |Count|. |
23 enum class MediaSessionSuspendedSource { | 23 enum class MediaSessionSuspendedSource { |
24 SystemTransient = 0, | 24 SystemTransient = 0, |
25 SystemPermanent = 1, | 25 SystemPermanent = 1, |
26 UI = 2, | 26 UI = 2, |
27 CONTENT = 3, | 27 CONTENT = 3, |
28 SystemTransientDuck = 4, | 28 SystemTransientDuck = 4, |
29 Count // Leave at the end. | 29 Count // Leave at the end. |
30 }; | 30 }; |
31 | 31 |
32 // Extended enum to blink::mojom::MediaSessionAction, distinguishing default | |
33 // action handling. | |
34 enum class MediaSessionUserAction { | |
35 Play = 0, | |
36 PlayDefault = 1, | |
37 Pause = 2, | |
38 PauseDefault = 3, | |
39 StopDefault = 4, | |
40 PreviousTrack = 5, | |
41 NextTrack = 6, | |
42 SeekBackward = 7, | |
43 SeekForward = 8, | |
44 Count // Leave at the end. | |
45 }; | |
46 | |
32 MediaSessionUmaHelper(); | 47 MediaSessionUmaHelper(); |
33 ~MediaSessionUmaHelper(); | 48 ~MediaSessionUmaHelper(); |
34 | 49 |
35 void RecordSessionSuspended(MediaSessionSuspendedSource source) const; | 50 void RecordSessionSuspended(MediaSessionSuspendedSource source) const; |
36 | 51 |
37 // Record the result of calling the native requestAudioFocus(). | 52 // Record the result of calling the native requestAudioFocus(). |
38 void RecordRequestAudioFocusResult(bool result) const; | 53 void RecordRequestAudioFocusResult(bool result) const; |
39 | 54 |
55 void RecordMediaSessionUserAction(MediaSessionUserAction action) const; | |
mlamouri (slow - plz ping)
2017/04/07 11:15:56
Could that be static?
Zhiqiang Zhang (Slow)
2017/04/07 15:12:43
Done.
| |
56 | |
40 void OnSessionActive(); | 57 void OnSessionActive(); |
41 void OnSessionSuspended(); | 58 void OnSessionSuspended(); |
42 void OnSessionInactive(); | 59 void OnSessionInactive(); |
43 | 60 |
44 void SetClockForTest(std::unique_ptr<base::TickClock> testing_clock); | 61 void SetClockForTest(std::unique_ptr<base::TickClock> testing_clock); |
45 | 62 |
46 private: | 63 private: |
47 base::TimeDelta total_active_time_; | 64 base::TimeDelta total_active_time_; |
48 base::TimeTicks current_active_time_; | 65 base::TimeTicks current_active_time_; |
49 std::unique_ptr<base::TickClock> clock_; | 66 std::unique_ptr<base::TickClock> clock_; |
50 }; | 67 }; |
51 | 68 |
52 } // namespace content | 69 } // namespace content |
53 | 70 |
54 #endif // CONTENT_BROWSER_MEDIA_SESSION_MEDIA_SESSION_UMA_HELPER_H_ | 71 #endif // CONTENT_BROWSER_MEDIA_SESSION_MEDIA_SESSION_UMA_HELPER_H_ |
OLD | NEW |