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

Unified Diff: content/renderer/render_frame_impl.h

Issue 364123002: [Cross-Site Isolation] Migrate entire MediaStream verticals to be per-RenderFrame. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: TabCaptureRegistry: Keep track of original target RenderFrameHost, for OnRequestUpdate(). Created 6 years, 5 months 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 side-by-side diff with in-line comments
Download patch
Index: content/renderer/render_frame_impl.h
diff --git a/content/renderer/render_frame_impl.h b/content/renderer/render_frame_impl.h
index 5fca735a83f6f8e994616e0873b4f9b498506675..bf09ebdf7a18fc3d6837c5399376c25fdc9f17d0 100644
--- a/content/renderer/render_frame_impl.h
+++ b/content/renderer/render_frame_impl.h
@@ -58,6 +58,8 @@ namespace content {
class ChildFrameCompositingHelper;
class GeolocationDispatcher;
+class MediaStreamDispatcher;
+class MediaStreamImpl;
class MediaStreamRendererFactory;
class MidiDispatcher;
class NotificationProvider;
@@ -201,6 +203,10 @@ class CONTENT_EXPORT RenderFrameImpl
bool keep_selection);
#endif // ENABLE_PLUGINS
+ // May return NULL in some cases, especially if userMediaClient() returns
+ // NULL.
+ MediaStreamDispatcher* GetMediaStreamDispatcher();
+
// IPC::Sender
virtual bool Send(IPC::Message* msg) OVERRIDE;
@@ -528,10 +534,10 @@ class CONTENT_EXPORT RenderFrameImpl
const blink::WebURLError& error,
bool replace);
- // Initializes |web_user_media_client_|, returning true if successful. Returns
- // false if it wasn't possible to create a MediaStreamClient (e.g., WebRTC is
- // disabled) in which case |web_user_media_client_| is NULL.
- bool InitializeUserMediaClient();
+ // Initializes |web_user_media_client_|. If this fails, because it wasn't
+ // possible to create a MediaStreamClient (e.g., WebRTC is disabled), then
+ // |web_user_media_client_| will remain NULL.
+ void InitializeUserMediaClient();
blink::WebMediaPlayer* CreateWebMediaPlayerForMediaStream(
const blink::WebURL& url,
@@ -619,7 +625,8 @@ class CONTENT_EXPORT RenderFrameImpl
// Holds a reference to the service which provides desktop notifications.
NotificationProvider* notification_provider_;
- blink::WebUserMediaClient* web_user_media_client_;
+ // Destroyed via the RenderFrameObserver::OnDestruct() mechanism.
+ MediaStreamImpl* web_user_media_client_;
// MidiClient attached to this frame; lazily initialized.
MidiDispatcher* midi_dispatcher_;

Powered by Google App Engine
This is Rietveld 408576698