Index: content/browser/media/android/media_web_contents_observer_android.cc |
diff --git a/content/browser/media/android/media_web_contents_observer_android.cc b/content/browser/media/android/media_web_contents_observer_android.cc |
index 1b48959e9bad9ae15030a60b37bcce87c4d49bd8..224a8f123a4dbc6186071a538f6707598d4e3990 100644 |
--- a/content/browser/media/android/media_web_contents_observer_android.cc |
+++ b/content/browser/media/android/media_web_contents_observer_android.cc |
@@ -96,7 +96,13 @@ bool MediaWebContentsObserverAndroid::OnMessageReceived( |
if (OnMediaPlayerMessageReceived(msg, render_frame_host)) |
return true; |
- return OnMediaPlayerSetCdmMessageReceived(msg, render_frame_host); |
+ if (OnMediaPlayerSetCdmMessageReceived(msg, render_frame_host)) |
+ return true; |
+ |
+ if (OnMediaSessionMessageReceived(msg, render_frame_host)) |
+ return true; |
+ |
+ return false; |
} |
bool MediaWebContentsObserverAndroid::OnMediaPlayerMessageReceived( |
@@ -143,12 +149,6 @@ bool MediaWebContentsObserverAndroid::OnMediaPlayerMessageReceived( |
GetMediaPlayerManager(render_frame_host), |
BrowserMediaPlayerManager::OnNotifyExternalSurface) |
#endif // defined(VIDEO_HOLE) |
- IPC_MESSAGE_FORWARD(MediaSessionHostMsg_Activate, |
- GetMediaSessionManager(render_frame_host), |
- BrowserMediaSessionManager::OnActivate) |
- IPC_MESSAGE_FORWARD(MediaSessionHostMsg_Deactivate, |
- GetMediaSessionManager(render_frame_host), |
- BrowserMediaSessionManager::OnDeactivate) |
IPC_MESSAGE_UNHANDLED(handled = false) |
IPC_END_MESSAGE_MAP() |
return handled; |
@@ -166,6 +166,27 @@ bool MediaWebContentsObserverAndroid::OnMediaPlayerSetCdmMessageReceived( |
return handled; |
} |
+bool MediaWebContentsObserverAndroid::OnMediaSessionMessageReceived( |
+ const IPC::Message& msg, |
+ RenderFrameHost* render_frame_host) { |
+ bool handled = true; |
+ |
+ IPC_BEGIN_MESSAGE_MAP(MediaWebContentsObserver, msg) |
+ IPC_MESSAGE_FORWARD(MediaSessionHostMsg_Activate, |
+ GetMediaSessionManager(render_frame_host), |
+ BrowserMediaSessionManager::OnActivate) |
+ IPC_MESSAGE_FORWARD(MediaSessionHostMsg_Deactivate, |
+ GetMediaSessionManager(render_frame_host), |
+ BrowserMediaSessionManager::OnDeactivate) |
+ IPC_MESSAGE_FORWARD(MediaSessionHostMsg_SetMetadata, |
+ GetMediaSessionManager(render_frame_host), |
+ BrowserMediaSessionManager::OnSetMetadata) |
+ IPC_MESSAGE_UNHANDLED(handled = false) |
+ IPC_END_MESSAGE_MAP() |
+ |
+ return handled; |
+} |
+ |
void MediaWebContentsObserverAndroid::OnSetCdm( |
RenderFrameHost* render_frame_host, |
int player_id, |