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, |