/* * Copyright (c) 2025, Miguel Sacristán Izcue * * SPDX-License-Identifier: BSD-2-Clause */ #include #include #include #include #include namespace Web::SVG { GC_DEFINE_ALLOCATOR(SVGAnimationElement); SVGAnimationElement::SVGAnimationElement(DOM::Document& document, DOM::QualifiedName name) : SVGElement(document, name) { } void SVGAnimationElement::initialize(JS::Realm& realm) { WEB_SET_PROTOTYPE_FOR_INTERFACE(SVGAnimationElement); Base::initialize(realm); } // https://svgwg.org/specs/animations/#__svg__SVGAnimationElement__onbegin void SVGAnimationElement::set_onbegin(GC::Ptr value) { set_event_handler_attribute(HTML::EventNames::begin, value); } // https://svgwg.org/specs/animations/#__svg__SVGAnimationElement__onbegin GC::Ptr SVGAnimationElement::onbegin() { return event_handler_attribute(HTML::EventNames::begin); } // https://svgwg.org/specs/animations/#__svg__SVGAnimationElement__onend void SVGAnimationElement::set_onend(GC::Ptr value) { set_event_handler_attribute(HTML::EventNames::end, value); } // https://svgwg.org/specs/animations/#__svg__SVGAnimationElement__onend GC::Ptr SVGAnimationElement::onend() { return event_handler_attribute(HTML::EventNames::error); } // https://svgwg.org/specs/animations/#__svg__SVGAnimationElement__onrepeat void SVGAnimationElement::set_onrepeat(GC::Ptr value) { set_event_handler_attribute(HTML::EventNames::end, value); } // https://svgwg.org/specs/animations/#__svg__SVGAnimationElement__onrepeat GC::Ptr SVGAnimationElement::onrepeat() { return event_handler_attribute(HTML::EventNames::repeat); } }