AnimationPlaybackEvent.cpp [plain text]
#include "config.h"
#include "AnimationPlaybackEvent.h"
#include "WebAnimationUtilities.h"
namespace WebCore {
AnimationPlaybackEvent::AnimationPlaybackEvent(const AtomicString& type, const AnimationPlaybackEventInit& initializer, IsTrusted isTrusted)
: Event(type, initializer, isTrusted)
{
if (initializer.currentTime == std::nullopt)
m_currentTime = std::nullopt;
else
m_currentTime = Seconds::fromMilliseconds(initializer.currentTime.value());
if (initializer.timelineTime == std::nullopt)
m_timelineTime = std::nullopt;
else
m_timelineTime = Seconds::fromMilliseconds(initializer.timelineTime.value());
}
AnimationPlaybackEvent::AnimationPlaybackEvent(const AtomicString& type, std::optional<Seconds> currentTime, std::optional<Seconds> timelineTime)
: Event(type, true, false)
, m_currentTime(currentTime)
, m_timelineTime(timelineTime)
{
}
AnimationPlaybackEvent::~AnimationPlaybackEvent() = default;
std::optional<double> AnimationPlaybackEvent::bindingsCurrentTime() const
{
if (!m_currentTime)
return std::nullopt;
return secondsToWebAnimationsAPITime(m_currentTime.value());
}
std::optional<double> AnimationPlaybackEvent::bindingsTimelineTime() const
{
if (!m_timelineTime)
return std::nullopt;
return secondsToWebAnimationsAPITime(m_timelineTime.value());
}
}