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

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

Issue 2204673004: WIP - WebMediaPlayer switch media renderer. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Addressed comments. Created 4 years, 3 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: 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 a0684f80b7e06f7374b48af6c614da0578e5e1e5..7081e67fb43fb32650c05a74a2459fbc78e225d7 100644
--- a/third_party/WebKit/Source/web/FrameLoaderClientImpl.cpp
+++ b/third_party/WebKit/Source/web/FrameLoaderClientImpl.cpp
@@ -788,9 +788,16 @@ std::unique_ptr<WebMediaPlayer> FrameLoaderClientImpl::createWebMediaPlayer(
HTMLMediaElementEncryptedMedia& encryptedMedia = HTMLMediaElementEncryptedMedia::from(htmlMediaElement);
WebString sinkId(HTMLMediaElementAudioOutputDevice::sinkId(htmlMediaElement));
- return wrapUnique(webFrame->client()->createMediaPlayer(source,
+ std::unique_ptr<WebMediaPlayer> mediaPlayer = wrapUnique(webFrame->client()->createMediaPlayer(source,
client, &encryptedMedia,
encryptedMedia.contentDecryptionModule(), sinkId));
+
+ // Notify WMPI if the video is loaded in fullscreen or its ancestor is full screen element.
miu 2016/09/30 08:12:11 Blink coding style generally leans on the side of
xjz 2016/10/01 00:28:41 Done. Removed comments.
+ Element* fullscreenElement = Fullscreen::currentFullScreenElementFrom(htmlMediaElement.document());
+ if (fullscreenElement->contains(&htmlMediaElement))
+ mediaPlayer->ancestorEnteredFullscreen();
+
+ return mediaPlayer;
}
std::unique_ptr<WebMediaSession> FrameLoaderClientImpl::createWebMediaSession()

Powered by Google App Engine
This is Rietveld 408576698