mirror of
https://github.com/LadybirdBrowser/ladybird
synced 2026-05-11 17:37:33 +02:00
Previously we were inconsistent by generating code for enum definitions but not generating code for dictionaries. With future changes to the IDL generator to expose helpers to convert to and from IDL values this produced circular depdendencies. To solve this problem, also generate the dictionary definitions in bindings headers.
39 lines
1.2 KiB
C++
39 lines
1.2 KiB
C++
/*
|
|
* Copyright (c) 2024, Lucas Chollet <lucas.chollet@serenityos.org>.
|
|
*
|
|
* SPDX-License-Identifier: BSD-2-Clause
|
|
*/
|
|
|
|
#pragma once
|
|
|
|
#include <LibWeb/Bindings/TransitionEvent.h>
|
|
#include <LibWeb/DOM/Event.h>
|
|
|
|
namespace Web::CSS {
|
|
|
|
class TransitionEvent final : public DOM::Event {
|
|
WEB_PLATFORM_OBJECT(TransitionEvent, DOM::Event);
|
|
GC_DECLARE_ALLOCATOR(TransitionEvent);
|
|
|
|
public:
|
|
[[nodiscard]] static GC::Ref<TransitionEvent> create(JS::Realm&, FlyString const& event_name, Bindings::TransitionEventInit const& = {});
|
|
[[nodiscard]] static GC::Ref<TransitionEvent> construct_impl(JS::Realm&, FlyString const& event_name, Bindings::TransitionEventInit const& = {});
|
|
|
|
virtual ~TransitionEvent() override;
|
|
|
|
String const& property_name() const { return m_property_name; }
|
|
double elapsed_time() const { return m_elapsed_time; }
|
|
String const& pseudo_element() const { return m_pseudo_element; }
|
|
|
|
private:
|
|
TransitionEvent(JS::Realm&, FlyString const& event_name, Bindings::TransitionEventInit const& event_init);
|
|
|
|
virtual void initialize(JS::Realm&) override;
|
|
|
|
String m_property_name {};
|
|
double m_elapsed_time {};
|
|
String m_pseudo_element {};
|
|
};
|
|
|
|
}
|