diff --git a/Userland/Libraries/LibWeb/HTML/WebSocket.cpp b/Userland/Libraries/LibWeb/HTML/WebSocket.cpp
index 5076ce96270..f3aabe91cf0 100644
--- a/Userland/Libraries/LibWeb/HTML/WebSocket.cpp
+++ b/Userland/Libraries/LibWeb/HTML/WebSocket.cpp
@@ -226,49 +226,9 @@ JS::Object* WebSocket::create_wrapper(JS::GlobalObject& global_object)
} \
HTML::EventHandler WebSocket::attribute_name() \
{ \
- return get_event_handler_attribute(event_name); \
+ return event_handler_attribute(event_name); \
}
ENUMERATE_WEBSOCKET_EVENT_HANDLERS(__ENUMERATE)
#undef __ENUMERATE
-// FIXME: This is copied from GlobalEventHandlers.cpp. Find a way to deduplicate it.
-void WebSocket::set_event_handler_attribute(const FlyString& name, HTML::EventHandler value)
-{
- RefPtr listener;
- if (!value.callback.is_null()) {
- listener = adopt_ref(*new DOM::EventListener(move(value.callback)));
- } else {
- StringBuilder builder;
- builder.appendff("function {}(event) {{\n{}\n}}", name, value.string);
- auto parser = JS::Parser(JS::Lexer(builder.string_view()));
- auto program = parser.parse_function_node();
- if (parser.has_errors()) {
- dbgln("Failed to parse script in event handler attribute '{}'", name);
- return;
- }
- auto* function = JS::OrdinaryFunctionObject::create(script_execution_context()->interpreter().global_object(), name, program->body(), program->parameters(), program->function_length(), nullptr, JS::FunctionKind::Regular, false, false);
- VERIFY(function);
- listener = adopt_ref(*new DOM::EventListener(JS::make_handle(static_cast(function))));
- }
- if (listener) {
- for (auto& registered_listener : listeners()) {
- if (registered_listener.event_name == name && registered_listener.listener->is_attribute()) {
- remove_event_listener(name, registered_listener.listener);
- break;
- }
- }
- add_event_listener(name, listener.release_nonnull());
- }
-}
-
-HTML::EventHandler WebSocket::get_event_handler_attribute(const FlyString& name)
-{
- for (auto& listener : listeners()) {
- if (listener.event_name == name && listener.listener->is_attribute())
- return HTML::EventHandler { JS::make_handle(&listener.listener->function()) };
- }
-
- return {};
-}
-
}
diff --git a/Userland/Libraries/LibWeb/HTML/WebSocket.h b/Userland/Libraries/LibWeb/HTML/WebSocket.h
index d2f6e0b46fd..6491739dcd9 100644
--- a/Userland/Libraries/LibWeb/HTML/WebSocket.h
+++ b/Userland/Libraries/LibWeb/HTML/WebSocket.h
@@ -78,9 +78,6 @@ public:
ENUMERATE_WEBSOCKET_EVENT_HANDLERS(__ENUMERATE)
#undef __ENUMERATE
- void set_event_handler_attribute(const FlyString& name, HTML::EventHandler);
- HTML::EventHandler get_event_handler_attribute(const FlyString& name);
-
ReadyState ready_state() const;
String extensions() const;
String protocol() const;