Chromium Code Reviews| Index: content/browser/media/session/media_session_impl.cc |
| diff --git a/content/browser/media/session/media_session_impl.cc b/content/browser/media/session/media_session_impl.cc |
| index dd2e1db067dc363fa7430afe2cb94ef57b74acdb..268fbbbe60acdcee1f2427f1536fa568b56534a7 100644 |
| --- a/content/browser/media/session/media_session_impl.cc |
| +++ b/content/browser/media/session/media_session_impl.cc |
| @@ -12,6 +12,7 @@ |
| #include "content/browser/web_contents/web_contents_impl.h" |
| #include "content/public/browser/media_session.h" |
| #include "content/public/browser/media_session_observer.h" |
| +#include "content/public/browser/navigation_handle.h" |
| #include "content/public/browser/web_contents.h" |
| #include "media/base/media_content_type.h" |
| @@ -115,6 +116,16 @@ void MediaSessionImpl::RenderFrameDeleted(RenderFrameHost* rfh) { |
| OnServiceDestroyed(services_[rfh]); |
| } |
| +void MediaSessionImpl::DidFinishNavigation( |
| + NavigationHandle* navigation_handle) { |
| + if (!navigation_handle->HasCommitted() || navigation_handle->IsSamePage()) |
| + return; |
| + |
| + RenderFrameHost* rfh = navigation_handle->GetRenderFrameHost(); |
| + if (services_.count(rfh)) |
| + services_[rfh]->Reset(); |
|
whywhat
2017/02/28 21:26:56
nit: add a comment why Reset needs to be called or
Zhiqiang Zhang (Slow)
2017/02/28 22:13:10
Done.
|
| +} |
| + |
| void MediaSessionImpl::AddObserver(MediaSessionObserver* observer) { |
| observers_.AddObserver(observer); |
| } |