| 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 #include "content/browser/media/android/media_web_contents_observer_android.h" | 5 #include "content/browser/media/android/media_web_contents_observer_android.h" |
| 6 | 6 |
| 7 #include <utility> | 7 #include <utility> |
| 8 | 8 |
| 9 #include "base/memory/ptr_util.h" | 9 #include "base/memory/ptr_util.h" |
| 10 #include "content/browser/media/android/browser_media_player_manager.h" | 10 #include "content/browser/media/android/browser_media_player_manager.h" |
| (...skipping 97 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 108 | 108 |
| 109 if (OnSurfaceViewManagerMessageReceived(msg, render_frame_host)) | 109 if (OnSurfaceViewManagerMessageReceived(msg, render_frame_host)) |
| 110 return true; | 110 return true; |
| 111 | 111 |
| 112 return false; | 112 return false; |
| 113 } | 113 } |
| 114 | 114 |
| 115 bool MediaWebContentsObserverAndroid::OnMediaPlayerMessageReceived( | 115 bool MediaWebContentsObserverAndroid::OnMediaPlayerMessageReceived( |
| 116 const IPC::Message& msg, | 116 const IPC::Message& msg, |
| 117 RenderFrameHost* render_frame_host) { | 117 RenderFrameHost* render_frame_host) { |
| 118 // The only BMPM instance that is still currently used is the |
| 119 // RemoteMediaPlayerManager, used in casting. |
| 120 // |
| 121 // In the webview case, casting is not supported, and GetMediaPlayerManager() |
| 122 // will return a nullptr. It is safe to not handle the messages, since the |
| 123 // only message we can receive is an unavoidable MediaPlayerHostMsg_Initialize |
| 124 // that WMPI sends out in WebMediaPlayerImpl::DoLoad(). |
| 125 BrowserMediaPlayerManager* media_player_manager = |
| 126 GetMediaPlayerManager(render_frame_host); |
| 127 |
| 128 if (!media_player_manager) |
| 129 return false; |
| 130 |
| 118 bool handled = true; | 131 bool handled = true; |
| 119 IPC_BEGIN_MESSAGE_MAP(MediaWebContentsObserverAndroid, msg) | 132 IPC_BEGIN_MESSAGE_MAP(MediaWebContentsObserverAndroid, msg) |
| 120 IPC_MESSAGE_FORWARD(MediaPlayerHostMsg_EnterFullscreen, | 133 IPC_MESSAGE_FORWARD(MediaPlayerHostMsg_EnterFullscreen, |
| 121 GetMediaPlayerManager(render_frame_host), | 134 media_player_manager, |
| 122 BrowserMediaPlayerManager::OnEnterFullscreen) | 135 BrowserMediaPlayerManager::OnEnterFullscreen) |
| 123 IPC_MESSAGE_FORWARD(MediaPlayerHostMsg_Initialize, | 136 IPC_MESSAGE_FORWARD(MediaPlayerHostMsg_Initialize, media_player_manager, |
| 124 GetMediaPlayerManager(render_frame_host), | |
| 125 BrowserMediaPlayerManager::OnInitialize) | 137 BrowserMediaPlayerManager::OnInitialize) |
| 126 IPC_MESSAGE_FORWARD(MediaPlayerHostMsg_Start, | 138 IPC_MESSAGE_FORWARD(MediaPlayerHostMsg_Start, media_player_manager, |
| 127 GetMediaPlayerManager(render_frame_host), | |
| 128 BrowserMediaPlayerManager::OnStart) | 139 BrowserMediaPlayerManager::OnStart) |
| 129 IPC_MESSAGE_FORWARD(MediaPlayerHostMsg_Seek, | 140 IPC_MESSAGE_FORWARD(MediaPlayerHostMsg_Seek, media_player_manager, |
| 130 GetMediaPlayerManager(render_frame_host), | |
| 131 BrowserMediaPlayerManager::OnSeek) | 141 BrowserMediaPlayerManager::OnSeek) |
| 132 IPC_MESSAGE_FORWARD(MediaPlayerHostMsg_Pause, | 142 IPC_MESSAGE_FORWARD(MediaPlayerHostMsg_Pause, media_player_manager, |
| 133 GetMediaPlayerManager(render_frame_host), | |
| 134 BrowserMediaPlayerManager::OnPause) | 143 BrowserMediaPlayerManager::OnPause) |
| 135 IPC_MESSAGE_FORWARD(MediaPlayerHostMsg_SetVolume, | 144 IPC_MESSAGE_FORWARD(MediaPlayerHostMsg_SetVolume, media_player_manager, |
| 136 GetMediaPlayerManager(render_frame_host), | |
| 137 BrowserMediaPlayerManager::OnSetVolume) | 145 BrowserMediaPlayerManager::OnSetVolume) |
| 138 IPC_MESSAGE_FORWARD(MediaPlayerHostMsg_SetPoster, | 146 IPC_MESSAGE_FORWARD(MediaPlayerHostMsg_SetPoster, media_player_manager, |
| 139 GetMediaPlayerManager(render_frame_host), | |
| 140 BrowserMediaPlayerManager::OnSetPoster) | 147 BrowserMediaPlayerManager::OnSetPoster) |
| 141 IPC_MESSAGE_FORWARD(MediaPlayerHostMsg_SuspendAndRelease, | 148 IPC_MESSAGE_FORWARD(MediaPlayerHostMsg_SuspendAndRelease, |
| 142 GetMediaPlayerManager(render_frame_host), | 149 media_player_manager, |
| 143 BrowserMediaPlayerManager::OnSuspendAndReleaseResources) | 150 BrowserMediaPlayerManager::OnSuspendAndReleaseResources) |
| 144 IPC_MESSAGE_FORWARD(MediaPlayerHostMsg_DestroyMediaPlayer, | 151 IPC_MESSAGE_FORWARD(MediaPlayerHostMsg_DestroyMediaPlayer, |
| 145 GetMediaPlayerManager(render_frame_host), | 152 media_player_manager, |
| 146 BrowserMediaPlayerManager::OnDestroyPlayer) | 153 BrowserMediaPlayerManager::OnDestroyPlayer) |
| 147 IPC_MESSAGE_FORWARD(MediaPlayerHostMsg_RequestRemotePlayback, | 154 IPC_MESSAGE_FORWARD(MediaPlayerHostMsg_RequestRemotePlayback, |
| 148 GetMediaPlayerManager(render_frame_host), | 155 media_player_manager, |
| 149 BrowserMediaPlayerManager::OnRequestRemotePlayback) | 156 BrowserMediaPlayerManager::OnRequestRemotePlayback) |
| 150 IPC_MESSAGE_FORWARD( | 157 IPC_MESSAGE_FORWARD( |
| 151 MediaPlayerHostMsg_RequestRemotePlaybackControl, | 158 MediaPlayerHostMsg_RequestRemotePlaybackControl, media_player_manager, |
| 152 GetMediaPlayerManager(render_frame_host), | |
| 153 BrowserMediaPlayerManager::OnRequestRemotePlaybackControl) | 159 BrowserMediaPlayerManager::OnRequestRemotePlaybackControl) |
| 154 IPC_MESSAGE_FORWARD(MediaPlayerHostMsg_RequestRemotePlaybackStop, | 160 IPC_MESSAGE_FORWARD(MediaPlayerHostMsg_RequestRemotePlaybackStop, |
| 155 GetMediaPlayerManager(render_frame_host), | 161 media_player_manager, |
| 156 BrowserMediaPlayerManager::OnRequestRemotePlaybackStop) | 162 BrowserMediaPlayerManager::OnRequestRemotePlaybackStop) |
| 157 IPC_MESSAGE_UNHANDLED(handled = false) | 163 IPC_MESSAGE_UNHANDLED(handled = false) |
| 158 IPC_END_MESSAGE_MAP() | 164 IPC_END_MESSAGE_MAP() |
| 159 return handled; | 165 return handled; |
| 160 } | 166 } |
| 161 | 167 |
| 162 bool MediaWebContentsObserverAndroid::OnSurfaceViewManagerMessageReceived( | 168 bool MediaWebContentsObserverAndroid::OnSurfaceViewManagerMessageReceived( |
| 163 const IPC::Message& msg, | 169 const IPC::Message& msg, |
| 164 RenderFrameHost* render_frame_host) { | 170 RenderFrameHost* render_frame_host) { |
| 165 bool handled = true; | 171 bool handled = true; |
| 166 IPC_BEGIN_MESSAGE_MAP(MediaWebContentsObserverAndroid, msg) | 172 IPC_BEGIN_MESSAGE_MAP(MediaWebContentsObserverAndroid, msg) |
| 167 IPC_MESSAGE_FORWARD(SurfaceViewManagerHostMsg_CreateFullscreenSurface, | 173 IPC_MESSAGE_FORWARD(SurfaceViewManagerHostMsg_CreateFullscreenSurface, |
| 168 GetSurfaceViewManager(render_frame_host), | 174 GetSurfaceViewManager(render_frame_host), |
| 169 BrowserSurfaceViewManager::OnCreateFullscreenSurface) | 175 BrowserSurfaceViewManager::OnCreateFullscreenSurface) |
| 170 IPC_MESSAGE_FORWARD(SurfaceViewManagerHostMsg_NaturalSizeChanged, | 176 IPC_MESSAGE_FORWARD(SurfaceViewManagerHostMsg_NaturalSizeChanged, |
| 171 GetSurfaceViewManager(render_frame_host), | 177 GetSurfaceViewManager(render_frame_host), |
| 172 BrowserSurfaceViewManager::OnNaturalSizeChanged) | 178 BrowserSurfaceViewManager::OnNaturalSizeChanged) |
| 173 IPC_MESSAGE_UNHANDLED(handled = false) | 179 IPC_MESSAGE_UNHANDLED(handled = false) |
| 174 IPC_END_MESSAGE_MAP() | 180 IPC_END_MESSAGE_MAP() |
| 175 return handled; | 181 return handled; |
| 176 } | 182 } |
| 177 | 183 |
| 178 } // namespace content | 184 } // namespace content |
| OLD | NEW |