Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(136)

Side by Side Diff: content/browser/web_contents/web_contents_impl.cc

Issue 2453623003: Decouple MediaSession messages from WebContents (full patch) (Closed)
Patch Set: Created 4 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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/web_contents/web_contents_impl.h" 5 #include "content/browser/web_contents/web_contents_impl.h"
6 6
7 #include <stddef.h> 7 #include <stddef.h>
8 8
9 #include <cmath> 9 #include <cmath>
10 #include <utility> 10 #include <utility>
(...skipping 42 matching lines...) Expand 10 before | Expand all | Expand 10 after
53 #include "content/browser/frame_host/render_frame_host_impl.h" 53 #include "content/browser/frame_host/render_frame_host_impl.h"
54 #include "content/browser/frame_host/render_frame_proxy_host.h" 54 #include "content/browser/frame_host/render_frame_proxy_host.h"
55 #include "content/browser/frame_host/render_widget_host_view_child_frame.h" 55 #include "content/browser/frame_host/render_widget_host_view_child_frame.h"
56 #include "content/browser/host_zoom_map_impl.h" 56 #include "content/browser/host_zoom_map_impl.h"
57 #include "content/browser/loader/loader_io_thread_notifier.h" 57 #include "content/browser/loader/loader_io_thread_notifier.h"
58 #include "content/browser/loader/resource_dispatcher_host_impl.h" 58 #include "content/browser/loader/resource_dispatcher_host_impl.h"
59 #include "content/browser/manifest/manifest_manager_host.h" 59 #include "content/browser/manifest/manifest_manager_host.h"
60 #include "content/browser/media/audio_stream_monitor.h" 60 #include "content/browser/media/audio_stream_monitor.h"
61 #include "content/browser/media/capture/web_contents_audio_muter.h" 61 #include "content/browser/media/capture/web_contents_audio_muter.h"
62 #include "content/browser/media/media_web_contents_observer.h" 62 #include "content/browser/media/media_web_contents_observer.h"
63 #include "content/browser/media/session/media_session.h" 63 #include "content/browser/media/session/media_session_impl.h"
64 #include "content/browser/message_port_message_filter.h" 64 #include "content/browser/message_port_message_filter.h"
65 #include "content/browser/plugin_content_origin_whitelist.h" 65 #include "content/browser/plugin_content_origin_whitelist.h"
66 #include "content/browser/renderer_host/render_process_host_impl.h" 66 #include "content/browser/renderer_host/render_process_host_impl.h"
67 #include "content/browser/renderer_host/render_view_host_delegate_view.h" 67 #include "content/browser/renderer_host/render_view_host_delegate_view.h"
68 #include "content/browser/renderer_host/render_view_host_impl.h" 68 #include "content/browser/renderer_host/render_view_host_impl.h"
69 #include "content/browser/renderer_host/render_widget_host_impl.h" 69 #include "content/browser/renderer_host/render_widget_host_impl.h"
70 #include "content/browser/renderer_host/render_widget_host_input_event_router.h" 70 #include "content/browser/renderer_host/render_widget_host_input_event_router.h"
71 #include "content/browser/renderer_host/render_widget_host_view_base.h" 71 #include "content/browser/renderer_host/render_widget_host_view_base.h"
72 #include "content/browser/renderer_host/text_input_manager.h" 72 #include "content/browser/renderer_host/text_input_manager.h"
73 #include "content/browser/screen_orientation/screen_orientation_dispatcher_host_ impl.h" 73 #include "content/browser/screen_orientation/screen_orientation_dispatcher_host_ impl.h"
(...skipping 3706 matching lines...) Expand 10 before | Expand all | Expand 10 after
3780 // for the new page has committed. 3780 // for the new page has committed.
3781 RenderViewHostImpl* rvhi = 3781 RenderViewHostImpl* rvhi =
3782 static_cast<RenderViewHostImpl*>(render_view_message_source_); 3782 static_cast<RenderViewHostImpl*>(render_view_message_source_);
3783 if (!rvhi->is_active()) 3783 if (!rvhi->is_active())
3784 return; 3784 return;
3785 3785
3786 for (auto& observer : observers_) 3786 for (auto& observer : observers_)
3787 observer.DidUpdateFaviconURL(candidates); 3787 observer.DidUpdateFaviconURL(candidates);
3788 } 3788 }
3789 3789
3790 void WebContentsImpl::OnMediaSessionStateChanged() {
3791 MediaSession* session = MediaSession::Get(this);
3792 for (auto& observer : observers_) {
3793 observer.MediaSessionStateChanged(session->IsControllable(),
3794 session->IsSuspended());
3795 }
3796 }
3797
3798 void WebContentsImpl::OnMediaSessionMetadataChanged() {
3799 MediaSession* session = MediaSession::Get(this);
3800 for (auto& observer : observers_) {
3801 observer.MediaSessionMetadataChanged(session->metadata());
3802 }
3803 }
3804
3805 void WebContentsImpl::ResumeMediaSession() {
3806 MediaSession::Get(this)->Resume(MediaSession::SuspendType::UI);
3807 }
3808
3809 void WebContentsImpl::SuspendMediaSession() {
3810 MediaSession::Get(this)->Suspend(MediaSession::SuspendType::UI);
3811 }
3812
3813 void WebContentsImpl::StopMediaSession() {
3814 MediaSession::Get(this)->Stop(MediaSession::SuspendType::UI);
3815 }
3816
3817 void WebContentsImpl::OnPasswordInputShownOnHttp() { 3790 void WebContentsImpl::OnPasswordInputShownOnHttp() {
3818 controller_.ssl_manager()->DidShowPasswordInputOnHttp(); 3791 controller_.ssl_manager()->DidShowPasswordInputOnHttp();
3819 } 3792 }
3820 3793
3821 void WebContentsImpl::OnCreditCardInputShownOnHttp() { 3794 void WebContentsImpl::OnCreditCardInputShownOnHttp() {
3822 controller_.ssl_manager()->DidShowCreditCardInputOnHttp(); 3795 controller_.ssl_manager()->DidShowCreditCardInputOnHttp();
3823 } 3796 }
3824 3797
3825 void WebContentsImpl::SetIsOverlayContent(bool is_overlay_content) { 3798 void WebContentsImpl::SetIsOverlayContent(bool is_overlay_content) {
3826 is_overlay_content_ = is_overlay_content; 3799 is_overlay_content_ = is_overlay_content;
(...skipping 1379 matching lines...) Expand 10 before | Expand all | Expand 10 after
5206 dialog_manager_ = dialog_manager; 5179 dialog_manager_ = dialog_manager;
5207 } 5180 }
5208 5181
5209 void WebContentsImpl::RemoveBindingSet(const std::string& interface_name) { 5182 void WebContentsImpl::RemoveBindingSet(const std::string& interface_name) {
5210 auto it = binding_sets_.find(interface_name); 5183 auto it = binding_sets_.find(interface_name);
5211 if (it != binding_sets_.end()) 5184 if (it != binding_sets_.end())
5212 binding_sets_.erase(it); 5185 binding_sets_.erase(it);
5213 } 5186 }
5214 5187
5215 } // namespace content 5188 } // namespace content
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698