diff options
Diffstat (limited to 'Source/WebCore/html/HTMLMediaElement.cpp')
-rw-r--r-- | Source/WebCore/html/HTMLMediaElement.cpp | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/Source/WebCore/html/HTMLMediaElement.cpp b/Source/WebCore/html/HTMLMediaElement.cpp index 395aabe80..6d5d6ee72 100644 --- a/Source/WebCore/html/HTMLMediaElement.cpp +++ b/Source/WebCore/html/HTMLMediaElement.cpp @@ -265,6 +265,7 @@ HTMLMediaElement::HTMLMediaElement(const QualifiedName& tagName, Document* docum , m_readyState(HAVE_NOTHING) , m_readyStateMaximum(HAVE_NOTHING) , m_volume(1.0f) + , m_volumeInitialized(false) , m_lastSeekTime(0) , m_previousProgressTime(numeric_limits<double>::max()) , m_lastTimeUpdateEventWallTime(0) @@ -2736,6 +2737,7 @@ void HTMLMediaElement::setVolume(double vol, ExceptionCode& ec) if (m_volume != vol) { m_volume = vol; + m_volumeInitialized = true; updateVolume(); scheduleEvent(eventNames().volumechangeEvent); } @@ -4000,7 +4002,8 @@ void HTMLMediaElement::updateVolume() } m_player->setMuted(shouldMute); - m_player->setVolume(m_volume * volumeMultiplier); + if (m_volumeInitialized) + m_player->setVolume(m_volume * volumeMultiplier); } if (hasMediaControls()) @@ -5104,6 +5107,11 @@ void HTMLMediaElement::mediaPlayerPlay() play(); } +bool HTMLMediaElement::mediaPlayerPlatformVolumeConfigurationRequired() const +{ + return !m_volumeInitialized; +} + bool HTMLMediaElement::mediaPlayerIsPaused() const { return paused(); |