/* * Copyright (c) 2023, Matthew Olsson . * * SPDX-License-Identifier: BSD-2-Clause */ #include #include namespace Web::Animations { JS_DEFINE_ALLOCATOR(AnimationPlaybackEvent); JS::NonnullGCPtr AnimationPlaybackEvent::create(JS::Realm& realm, FlyString const& type, AnimationPlaybackEventInit const& event_init) { return realm.heap().allocate(realm, realm, type, event_init); } // https://www.w3.org/TR/web-animations-1/#dom-animationplaybackevent-animationplaybackevent WebIDL::ExceptionOr> AnimationPlaybackEvent::construct_impl(JS::Realm& realm, FlyString const& type, AnimationPlaybackEventInit const& event_init) { return create(realm, type, event_init); } AnimationPlaybackEvent::AnimationPlaybackEvent(JS::Realm& realm, FlyString const& type, AnimationPlaybackEventInit const& event_init) : DOM::Event(realm, type, event_init) , m_current_time(event_init.current_time) , m_timeline_time(event_init.timeline_time) { } void AnimationPlaybackEvent::initialize(JS::Realm& realm) { Base::initialize(realm); set_prototype(&Bindings::ensure_web_prototype(realm, "AnimationPlaybackEvent"_fly_string)); } }