OLD | NEW |
1 // Copyright 2017 The Chromium Authors. All rights reserved. | 1 // Copyright 2017 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 MediaControls_h | 5 #ifndef MediaControls_h |
6 #define MediaControls_h | 6 #define MediaControls_h |
7 | 7 |
8 #include "core/CoreExport.h" | 8 #include "core/CoreExport.h" |
9 #include "platform/heap/Handle.h" | 9 #include "platform/heap/Handle.h" |
10 #include "platform/heap/Visitor.h" | 10 #include "platform/heap/Visitor.h" |
(...skipping 17 matching lines...) Expand all Loading... |
28 class Factory { | 28 class Factory { |
29 public: | 29 public: |
30 virtual MediaControls* Create(HTMLMediaElement&, ShadowRoot&) = 0; | 30 virtual MediaControls* Create(HTMLMediaElement&, ShadowRoot&) = 0; |
31 }; | 31 }; |
32 | 32 |
33 MediaControls(HTMLMediaElement&); | 33 MediaControls(HTMLMediaElement&); |
34 virtual ~MediaControls() = default; | 34 virtual ~MediaControls() = default; |
35 | 35 |
36 HTMLMediaElement& MediaElement() const; | 36 HTMLMediaElement& MediaElement() const; |
37 | 37 |
38 virtual void Show() = 0; | 38 // Enables showing of the controls - only shows if appropriate. |
| 39 virtual void MaybeShow() = 0; |
| 40 // Disables showing of the controls - immediately hides. |
39 virtual void Hide() = 0; | 41 virtual void Hide() = 0; |
| 42 |
40 virtual void Reset() = 0; | 43 virtual void Reset() = 0; |
41 | 44 |
42 // Notify the media controls that the controlsList attribute has changed. | 45 // Notify the media controls that the controlsList attribute has changed. |
43 virtual void OnControlsListUpdated() = 0; | 46 virtual void OnControlsListUpdated() = 0; |
44 | 47 |
45 // TODO(mlamouri): this is temporary to notify the controls that an | 48 // TODO(mlamouri): this is temporary to notify the controls that an |
46 // HTMLTrackElement failed to load because there is no web exposed way to | 49 // HTMLTrackElement failed to load because there is no web exposed way to |
47 // be notified on the TextTrack object. See https://crbug.com/669977 | 50 // be notified on the TextTrack object. See https://crbug.com/669977 |
48 virtual void OnTrackElementFailedToLoad() = 0; | 51 virtual void OnTrackElementFailedToLoad() = 0; |
49 | 52 |
(...skipping 18 matching lines...) Expand all Loading... |
68 | 71 |
69 DECLARE_VIRTUAL_TRACE(); | 72 DECLARE_VIRTUAL_TRACE(); |
70 | 73 |
71 private: | 74 private: |
72 Member<HTMLMediaElement> media_element_; | 75 Member<HTMLMediaElement> media_element_; |
73 }; | 76 }; |
74 | 77 |
75 } // namespace blink | 78 } // namespace blink |
76 | 79 |
77 #endif // MediaControls_h | 80 #endif // MediaControls_h |
OLD | NEW |