Chromium Code Reviews

Unified Diff: third_party/WebKit/Source/web/FrameLoaderClientImpl.cpp

Issue 1585163002: Media Session: prepare for implicit activation of user created session (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Be clearer about session being a media_session Created 4 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments.
Jump to:
View side-by-side diff with in-line comments
Index: third_party/WebKit/Source/web/FrameLoaderClientImpl.cpp
diff --git a/third_party/WebKit/Source/web/FrameLoaderClientImpl.cpp b/third_party/WebKit/Source/web/FrameLoaderClientImpl.cpp
index ffe5e93dafde63cdbc55cb4acdc360f085acd382..b5251e69b7b78a508f789d3fcb12c93f17d52da7 100644
--- a/third_party/WebKit/Source/web/FrameLoaderClientImpl.cpp
+++ b/third_party/WebKit/Source/web/FrameLoaderClientImpl.cpp
@@ -58,6 +58,7 @@
#include "modules/device_orientation/DeviceOrientationController.h"
#include "modules/encryptedmedia/HTMLMediaElementEncryptedMedia.h"
#include "modules/gamepad/NavigatorGamepad.h"
+#include "modules/mediasession/HTMLMediaElementMediaSession.h"
#include "modules/mediasession/MediaSession.h"
#include "modules/serviceworkers/NavigatorServiceWorker.h"
#include "modules/storage/DOMWindowStorageController.h"
@@ -801,11 +802,15 @@ PassOwnPtr<WebMediaPlayer> FrameLoaderClientImpl::createWebMediaPlayer(
if (!webFrame || !webFrame->client())
return nullptr;
+ WebMediaSession* webMediaSession = nullptr;
+ if (MediaSession* mediaSession = HTMLMediaElementMediaSession::session(htmlMediaElement))
+ webMediaSession = mediaSession->webMediaSession();
+
HTMLMediaElementEncryptedMedia& encryptedMedia = HTMLMediaElementEncryptedMedia::from(htmlMediaElement);
WebString sinkId(HTMLMediaElementAudioOutputDevice::sinkId(htmlMediaElement));
return adoptPtr(webFrame->client()->createMediaPlayer(webFrame, url,
client, &encryptedMedia,
- encryptedMedia.contentDecryptionModule(), sinkId));
+ encryptedMedia.contentDecryptionModule(), sinkId, webMediaSession));
}
PassOwnPtr<WebMediaSession> FrameLoaderClientImpl::createWebMediaSession()

Powered by Google App Engine