| Index: Source/core/animation/Player.cpp
|
| diff --git a/Source/core/animation/Player.cpp b/Source/core/animation/Player.cpp
|
| index 35d2ed0f64897830a8f405a392f7fef49229b9ac..2276e1cc39ae43652166e5ba55f816612b63ddd2 100644
|
| --- a/Source/core/animation/Player.cpp
|
| +++ b/Source/core/animation/Player.cpp
|
| @@ -36,6 +36,16 @@
|
|
|
| namespace WebCore {
|
|
|
| +namespace {
|
| +
|
| +static unsigned nextSequenceNumber()
|
| +{
|
| + static unsigned next = 0;
|
| + return ++next;
|
| +}
|
| +
|
| +}
|
| +
|
| PassRefPtr<Player> Player::create(DocumentTimeline& timeline, TimedItem* content)
|
| {
|
| return adoptRef(new Player(timeline, content));
|
| @@ -52,6 +62,7 @@ Player::Player(DocumentTimeline& timeline, TimedItem* content)
|
| , m_held(false)
|
| , m_isPausedForTesting(false)
|
| , m_outdated(false)
|
| + , m_sequenceNumber(nextSequenceNumber())
|
| {
|
| if (m_content) {
|
| if (m_content->player())
|
| @@ -299,6 +310,17 @@ void Player::cancel()
|
| m_content = nullptr;
|
| }
|
|
|
| +bool Player::hasLowerPriority(Player* player1, Player* player2)
|
| +{
|
| + if (player1->m_startTime < player2->m_startTime)
|
| + return true;
|
| + if (player1->m_startTime > player2->m_startTime)
|
| + return false;
|
| + if (isNull(player1->m_startTime) != isNull(player2->m_startTime))
|
| + return isNull(player1->m_startTime);
|
| + return player1->m_sequenceNumber < player2->m_sequenceNumber;
|
| +}
|
| +
|
| void Player::pauseForTesting(double pauseTime)
|
| {
|
| RELEASE_ASSERT(!paused());
|
|
|