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

Unified Diff: Source/web/WebMediaPlayerClientImpl.cpp

Issue 131763011: Expose the poster image URL to WebMediaPlayer subclasses (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: Addressed Anton & Aaron's comments Created 6 years, 10 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: Source/web/WebMediaPlayerClientImpl.cpp
diff --git a/Source/web/WebMediaPlayerClientImpl.cpp b/Source/web/WebMediaPlayerClientImpl.cpp
index e843d48b68a88c29343955a3cd09b6ba56bcc5fb..07514067bf4048f1bb179309a50600e417440554 100644
--- a/Source/web/WebMediaPlayerClientImpl.cpp
+++ b/Source/web/WebMediaPlayerClientImpl.cpp
@@ -12,6 +12,7 @@
#include "WebViewImpl.h"
#include "core/frame/Frame.h"
#include "core/html/HTMLMediaElement.h"
+#include "core/html/HTMLVideoElement.h"
#include "core/html/TimeRanges.h"
#include "core/rendering/RenderLayerCompositor.h"
#include "core/rendering/RenderView.h"
@@ -228,6 +229,7 @@ void WebMediaPlayerClientImpl::loadInternal()
// FIXME: Remove this cast
Frame* frame = static_cast<HTMLMediaElement*>(m_client)->document().frame();
+ WebURL poster = static_cast<HTMLVideoElement*>(m_client)->posterImageURL();
// This does not actually check whether the hardware can support accelerated
// compositing, but only if the flag is set. However, this is checked lazily
@@ -242,6 +244,10 @@ void WebMediaPlayerClientImpl::loadInternal()
m_audioSourceProvider.wrap(m_webMediaPlayer->audioSourceProvider());
#endif
+ // Tell WebMediaPlayer about the poster image URL, if it exists.
+ if (!poster.isEmpty())
+ m_webMediaPlayer->setPoster(poster);
+
// Tell WebMediaPlayer about any connected CDM (may be null).
m_webMediaPlayer->setContentDecryptionModule(m_cdm);
@@ -407,6 +413,12 @@ void WebMediaPlayerClientImpl::setMuted(bool muted)
m_webMediaPlayer->setVolume(muted ? 0 : m_volume);
}
+void WebMediaPlayerClientImpl::setPoster(const KURL& poster) {
+ if (m_webMediaPlayer && !poster.isEmpty()) {
acolwell GONE FROM CHROMIUM 2014/02/06 22:53:50 nit: I believe you need to notify m_webMediaPlayer
cimamoglu (inactive) 2014/02/07 14:36:19 Done.
+ m_webMediaPlayer->setPoster(WebURL(poster));
+ }
+}
+
MediaPlayer::NetworkState WebMediaPlayerClientImpl::networkState() const
{
if (m_webMediaPlayer)

Powered by Google App Engine
This is Rietveld 408576698