Chromium Code Reviews| Index: content/browser/frame_host/render_frame_host_impl.cc |
| diff --git a/content/browser/frame_host/render_frame_host_impl.cc b/content/browser/frame_host/render_frame_host_impl.cc |
| index 3754bebcc1199260ee1c9cc6f5b904c7936652a3..d72ef14963b6777e7862d03e0544f5ed2008d56c 100644 |
| --- a/content/browser/frame_host/render_frame_host_impl.cc |
| +++ b/content/browser/frame_host/render_frame_host_impl.cc |
| @@ -437,6 +437,7 @@ RenderFrameHostImpl::RenderFrameHostImpl(SiteInstance* site_instance, |
| pending_web_ui_type_(WebUI::kNoWebUI), |
| should_reuse_web_ui_(false), |
| has_selection_(false), |
| + is_audible_(false), |
| last_navigation_previews_state_(PREVIEWS_UNSPECIFIED), |
| frame_host_interface_broker_binding_(this), |
| frame_host_associated_binding_(this), |
| @@ -995,6 +996,9 @@ void RenderFrameHostImpl::RenderProcessGone(SiteInstanceImpl* site_instance) { |
| // Any future UpdateState or UpdateTitle messages from this or a recreated |
| // process should be ignored until the next commit. |
| set_nav_entry_id(0); |
| + |
| + if (is_audible_) |
| + GetProcess()->OnAudioStreamRemoved(); |
| } |
| void RenderFrameHostImpl::ReportContentSecurityPolicyViolation( |
| @@ -1182,6 +1186,20 @@ void RenderFrameHostImpl::Init() { |
| } |
| } |
| +bool RenderFrameHostImpl::IsAudible() { |
| + return is_audible_; |
| +} |
| + |
| +void RenderFrameHostImpl::OnAudioStateChanged(bool is_audible) { |
| + if (is_audible != is_audible_) { |
|
DaleCurtis
2017/06/22 00:35:54
early return is preferred.
lpy
2017/06/22 02:28:52
Done.
|
| + if (is_audible) |
| + GetProcess()->OnAudioStreamAdded(); |
| + else |
| + GetProcess()->OnAudioStreamRemoved(); |
| + } |
| + is_audible_ = is_audible; |
| +} |
| + |
| void RenderFrameHostImpl::OnDidAddMessageToConsole( |
| int32_t level, |
| const base::string16& message, |