| 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 MEDIA_REMOTING_REMOTING_RENDERER_CONTROLLER_H_ | 5 #ifndef MEDIA_REMOTING_REMOTING_RENDERER_CONTROLLER_H_ |
| 6 #define MEDIA_REMOTING_REMOTING_RENDERER_CONTROLLER_H_ | 6 #define MEDIA_REMOTING_REMOTING_RENDERER_CONTROLLER_H_ |
| 7 | 7 |
| 8 #include "base/callback.h" | 8 #include "base/callback.h" |
| 9 #include "base/memory/weak_ptr.h" | 9 #include "base/memory/weak_ptr.h" |
| 10 #include "media/base/media_observer.h" | 10 #include "media/base/media_observer.h" |
| (...skipping 21 matching lines...) Expand all Loading... |
| 32 void OnStarted(bool success) override; | 32 void OnStarted(bool success) override; |
| 33 void OnSessionStateChanged() override; | 33 void OnSessionStateChanged() override; |
| 34 | 34 |
| 35 // MediaObserver implementations. | 35 // MediaObserver implementations. |
| 36 void OnEnteredFullscreen() override; | 36 void OnEnteredFullscreen() override; |
| 37 void OnExitedFullscreen() override; | 37 void OnExitedFullscreen() override; |
| 38 void OnBecameDominantVisibleContent(bool is_dominant) override; | 38 void OnBecameDominantVisibleContent(bool is_dominant) override; |
| 39 void OnSetCdm(CdmContext* cdm_context) override; | 39 void OnSetCdm(CdmContext* cdm_context) override; |
| 40 void OnMetadataChanged(const PipelineMetadata& metadata) override; | 40 void OnMetadataChanged(const PipelineMetadata& metadata) override; |
| 41 void OnRemotePlaybackDisabled(bool disabled) override; | 41 void OnRemotePlaybackDisabled(bool disabled) override; |
| 42 void OnPlaying() override; |
| 43 void OnPaused() override; |
| 42 | 44 |
| 43 void SetSwitchRendererCallback(const base::Closure& cb); | 45 void SetSwitchRendererCallback(const base::Closure& cb); |
| 44 void SetRemoteSinkAvailableChangedCallback( | 46 void SetRemoteSinkAvailableChangedCallback( |
| 45 const base::Callback<void(bool)>& cb); | 47 const base::Callback<void(bool)>& cb); |
| 46 | 48 |
| 47 base::WeakPtr<RemotingRendererController> GetWeakPtr() { | 49 base::WeakPtr<RemotingRendererController> GetWeakPtr() { |
| 48 return weak_factory_.GetWeakPtr(); | 50 return weak_factory_.GetWeakPtr(); |
| 49 } | 51 } |
| 50 | 52 |
| 51 // Used by RemotingRendererFactory to query whether to create Media Remoting | 53 // Used by RemotingRendererFactory to query whether to create Media Remoting |
| (...skipping 61 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 113 // OnRemotePlaybackDisabled() at some point in the future. A web page | 115 // OnRemotePlaybackDisabled() at some point in the future. A web page |
| 114 // typically sets/removes the disableRemotePlayback attribute on a | 116 // typically sets/removes the disableRemotePlayback attribute on a |
| 115 // HTMLMediaElement to disable/enable remoting of its content. Please see the | 117 // HTMLMediaElement to disable/enable remoting of its content. Please see the |
| 116 // Remote Playback API spec for more details: | 118 // Remote Playback API spec for more details: |
| 117 // https://w3c.github.io/remote-playback | 119 // https://w3c.github.io/remote-playback |
| 118 bool is_remote_playback_disabled_ = true; | 120 bool is_remote_playback_disabled_ = true; |
| 119 | 121 |
| 120 // Indicates whether video is the dominant visible content in the tab. | 122 // Indicates whether video is the dominant visible content in the tab. |
| 121 bool is_dominant_content_ = false; | 123 bool is_dominant_content_ = false; |
| 122 | 124 |
| 125 // Indicates whether video is paused. |
| 126 bool is_paused_ = true; |
| 127 |
| 123 // The callback to switch the media renderer. | 128 // The callback to switch the media renderer. |
| 124 base::Closure switch_renderer_cb_; | 129 base::Closure switch_renderer_cb_; |
| 125 | 130 |
| 126 // Called when remoting sink availability is changed. | 131 // Called when remoting sink availability is changed. |
| 127 base::Callback<void(bool)> sink_available_changed_cb_; | 132 base::Callback<void(bool)> sink_available_changed_cb_; |
| 128 | 133 |
| 129 // This is initially the RemotingSourceImpl passed to the ctor, and might be | 134 // This is initially the RemotingSourceImpl passed to the ctor, and might be |
| 130 // replaced with a different instance later if OnSetCdm() is called. | 135 // replaced with a different instance later if OnSetCdm() is called. |
| 131 scoped_refptr<RemotingSourceImpl> remoting_source_; | 136 scoped_refptr<RemotingSourceImpl> remoting_source_; |
| 132 | 137 |
| 133 // This is used to check all the methods are called on the current thread in | 138 // This is used to check all the methods are called on the current thread in |
| 134 // debug builds. | 139 // debug builds. |
| 135 base::ThreadChecker thread_checker_; | 140 base::ThreadChecker thread_checker_; |
| 136 | 141 |
| 137 PipelineMetadata pipeline_metadata_; | 142 PipelineMetadata pipeline_metadata_; |
| 138 | 143 |
| 139 base::WeakPtrFactory<RemotingRendererController> weak_factory_; | 144 base::WeakPtrFactory<RemotingRendererController> weak_factory_; |
| 140 | 145 |
| 141 DISALLOW_COPY_AND_ASSIGN(RemotingRendererController); | 146 DISALLOW_COPY_AND_ASSIGN(RemotingRendererController); |
| 142 }; | 147 }; |
| 143 | 148 |
| 144 } // namespace media | 149 } // namespace media |
| 145 | 150 |
| 146 #endif // MEDIA_REMOTING_REMOTING_RENDERER_CONTROLLER_H_ | 151 #endif // MEDIA_REMOTING_REMOTING_RENDERER_CONTROLLER_H_ |
| OLD | NEW |