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 29 matching lines...) Expand all Loading... |
40 virtual void Reset() = 0; | 40 virtual void Reset() = 0; |
41 | 41 |
42 // Notify the media controls that the controlsList attribute has changed. | 42 // Notify the media controls that the controlsList attribute has changed. |
43 virtual void OnControlsListUpdated() = 0; | 43 virtual void OnControlsListUpdated() = 0; |
44 | 44 |
45 // TODO(mlamouri): this is temporary to notify the controls that an | 45 // TODO(mlamouri): this is temporary to notify the controls that an |
46 // HTMLTrackElement failed to load because there is no web exposed way to | 46 // HTMLTrackElement failed to load because there is no web exposed way to |
47 // be notified on the TextTrack object. See https://crbug.com/669977 | 47 // be notified on the TextTrack object. See https://crbug.com/669977 |
48 virtual void OnTrackElementFailedToLoad() = 0; | 48 virtual void OnTrackElementFailedToLoad() = 0; |
49 | 49 |
50 // TODO(mlamouri): the following methods will be able to become private when | |
51 // the controls have moved to modules/ and have access to RemotePlayback. | |
52 virtual void OnRemotePlaybackAvailabilityChanged() = 0; | |
53 virtual void OnRemotePlaybackConnecting() = 0; | |
54 virtual void OnRemotePlaybackDisconnected() = 0; | |
55 | |
56 // TODO(mlamouri): this method is needed in order to notify the controls that | |
57 // the attribute have changed. | |
58 virtual void OnDisableRemotePlaybackAttributeChanged() = 0; | |
59 | |
60 // TODO(mlamouri): this method should be moved away from the interface to | 50 // TODO(mlamouri): this method should be moved away from the interface to |
61 // become an implementation detail. | 51 // become an implementation detail. |
62 virtual void NetworkStateChanged() = 0; | 52 virtual void NetworkStateChanged() = 0; |
63 | 53 |
64 // Returns the layout object for the part of the controls that should be | 54 // Returns the layout object for the part of the controls that should be |
65 // used for overlap checking during text track layout. May be null. | 55 // used for overlap checking during text track layout. May be null. |
66 // TODO(mlamouri): required by LayoutVTTCue. | 56 // TODO(mlamouri): required by LayoutVTTCue. |
67 virtual LayoutObject* PanelLayoutObject() = 0; | 57 virtual LayoutObject* PanelLayoutObject() = 0; |
68 // Returns the layout object of the media controls container. Maybe null. | 58 // Returns the layout object of the media controls container. Maybe null. |
69 // TODO(mlamouri): required by LayoutVTTCue. | 59 // TODO(mlamouri): required by LayoutVTTCue. |
70 virtual LayoutObject* ContainerLayoutObject() = 0; | 60 virtual LayoutObject* ContainerLayoutObject() = 0; |
71 | 61 |
72 // TODO: the following are required by other parts of the media controls | 62 // TODO: the following are required by other parts of the media controls |
73 // implementation and could be removed when the full implementation has moved | 63 // implementation and could be removed when the full implementation has moved |
74 // to modules. | 64 // to modules. |
75 virtual HTMLDivElement* PanelElement() = 0; | 65 virtual HTMLDivElement* PanelElement() = 0; |
76 virtual Document& OwnerDocument() = 0; | 66 virtual Document& OwnerDocument() = 0; |
77 virtual void OnMediaControlsEnabledChange() = 0; | 67 virtual void OnMediaControlsEnabledChange() = 0; |
78 | 68 |
79 DECLARE_VIRTUAL_TRACE(); | 69 DECLARE_VIRTUAL_TRACE(); |
80 | 70 |
81 private: | 71 private: |
82 Member<HTMLMediaElement> media_element_; | 72 Member<HTMLMediaElement> media_element_; |
83 }; | 73 }; |
84 | 74 |
85 } // namespace blink | 75 } // namespace blink |
86 | 76 |
87 #endif // MediaControls_h | 77 #endif // MediaControls_h |
OLD | NEW |