diff --git a/Userland/Libraries/LibWeb/DOM/DOMEventListener.h b/Userland/Libraries/LibWeb/DOM/DOMEventListener.h index 3d944f95e2..87a3b744a8 100644 --- a/Userland/Libraries/LibWeb/DOM/DOMEventListener.h +++ b/Userland/Libraries/LibWeb/DOM/DOMEventListener.h @@ -6,7 +6,7 @@ #pragma once -#include +#include #include #include #include @@ -21,7 +21,7 @@ public: ~DOMEventListener(); // type (a string) - DeprecatedFlyString type; + FlyString type; // callback (null or an EventListener object) JS::GCPtr callback; diff --git a/Userland/Libraries/LibWeb/DOM/EventDispatcher.cpp b/Userland/Libraries/LibWeb/DOM/EventDispatcher.cpp index 1fa9d398f5..2599966bfc 100644 --- a/Userland/Libraries/LibWeb/DOM/EventDispatcher.cpp +++ b/Userland/Libraries/LibWeb/DOM/EventDispatcher.cpp @@ -63,7 +63,7 @@ bool EventDispatcher::inner_invoke(Event& event, Vectortype) + if (event.type() != listener->type) continue; // 2. Set found to true. diff --git a/Userland/Libraries/LibWeb/DOM/EventTarget.cpp b/Userland/Libraries/LibWeb/DOM/EventTarget.cpp index 586413f19a..742e1a70be 100644 --- a/Userland/Libraries/LibWeb/DOM/EventTarget.cpp +++ b/Userland/Libraries/LibWeb/DOM/EventTarget.cpp @@ -129,7 +129,7 @@ void EventTarget::add_event_listener(FlyString const& type, IDLEventListener* ca // once is once, and signal is signal. auto event_listener = heap().allocate_without_realm(); - event_listener->type = type.to_deprecated_fly_string(); + event_listener->type = type; event_listener->callback = callback; event_listener->signal = move(flattened_options.signal); event_listener->capture = flattened_options.capture; @@ -194,7 +194,7 @@ void EventTarget::remove_event_listener(FlyString const& type, IDLEventListener* return entry.callback->callback().callback == callback->callback().callback; }; auto it = m_event_listener_list.find_if([&](auto& entry) { - return entry->type == type.to_deprecated_fly_string() + return entry->type == type && callbacks_match(*entry) && entry->capture == capture; }); @@ -560,7 +560,7 @@ void EventTarget::activate_event_handler(FlyString const& name, HTML::EventHandl // 5. Let listener be a new event listener whose type is the event handler event type corresponding to eventHandler and callback is callback. auto listener = realm.heap().allocate_without_realm(); - listener->type = name.to_deprecated_fly_string(); + listener->type = name; listener->callback = IDLEventListener::create(realm, *callback).release_value_but_fixme_should_propagate_errors(); // 6. Add an event listener with eventTarget and listener. @@ -738,7 +738,7 @@ bool EventTarget::dispatch_event(Event& event) bool EventTarget::has_event_listener(FlyString const& type) const { for (auto& listener : m_event_listener_list) { - if (listener->type == type.to_deprecated_fly_string()) + if (listener->type == type) return true; } return false;