| Index: Source/WebCore/html/HTMLMediaElement.cpp
|
| diff --git a/Source/WebCore/html/HTMLMediaElement.cpp b/Source/WebCore/html/HTMLMediaElement.cpp
|
| index b606cf74360f7efab48ffb1009a115c36726907e..4a6d3d8dd6c6254bd5c007b138f0b9909ff4a6a7 100644
|
| --- a/Source/WebCore/html/HTMLMediaElement.cpp
|
| +++ b/Source/WebCore/html/HTMLMediaElement.cpp
|
| @@ -1166,6 +1166,9 @@ void HTMLMediaElement::setNetworkState(MediaPlayer::NetworkState state)
|
| if (state == MediaPlayer::Idle) {
|
| if (m_networkState > NETWORK_IDLE) {
|
| m_progressEventTimer.stop();
|
| + if (hasMediaControls() && m_player->bytesLoaded() != m_previousProgress)
|
| + mediaControls()->bufferingProgressed();
|
| +
|
| scheduleEvent(eventNames().suspendEvent);
|
| setShouldDelayLoadEvent(false);
|
| }
|
| @@ -1181,6 +1184,8 @@ void HTMLMediaElement::setNetworkState(MediaPlayer::NetworkState state)
|
| if (state == MediaPlayer::Loaded) {
|
| if (m_networkState != NETWORK_IDLE) {
|
| m_progressEventTimer.stop();
|
| + if (hasMediaControls() && m_player->bytesLoaded() != m_previousProgress)
|
| + mediaControls()->bufferingProgressed();
|
|
|
| // Schedule one last progress event so we guarantee that at least one is fired
|
| // for files that load very quickly.
|
| @@ -1332,6 +1337,8 @@ void HTMLMediaElement::progressEventTimerFired(Timer<HTMLMediaElement>*)
|
| m_sentStalledEvent = false;
|
| if (renderer())
|
| renderer()->updateFromElement();
|
| + if (hasMediaControls())
|
| + mediaControls()->bufferingProgressed();
|
| }
|
| }
|
|
|
|
|