From 80fad65e5b95c8b78fdd365c03d975eb5f6c3d4e Mon Sep 17 00:00:00 2001 From: Luke Wilde Date: Tue, 28 Feb 2023 18:39:11 +0000 Subject: [PATCH] LibWeb: Add function to EventTarget that says if it has any listeners Required by XHR to determine if it should use CORS-preflight if its upload object has any event listeners. --- Userland/Libraries/LibWeb/DOM/EventTarget.cpp | 5 +++++ Userland/Libraries/LibWeb/DOM/EventTarget.h | 1 + 2 files changed, 6 insertions(+) diff --git a/Userland/Libraries/LibWeb/DOM/EventTarget.cpp b/Userland/Libraries/LibWeb/DOM/EventTarget.cpp index cbbb2644de..a581a4cc9c 100644 --- a/Userland/Libraries/LibWeb/DOM/EventTarget.cpp +++ b/Userland/Libraries/LibWeb/DOM/EventTarget.cpp @@ -744,4 +744,9 @@ bool EventTarget::has_event_listener(DeprecatedFlyString const& type) const return false; } +bool EventTarget::has_event_listeners() const +{ + return !m_event_listener_list.is_empty(); +} + } diff --git a/Userland/Libraries/LibWeb/DOM/EventTarget.h b/Userland/Libraries/LibWeb/DOM/EventTarget.h index 240d9ad387..5077c92ef7 100644 --- a/Userland/Libraries/LibWeb/DOM/EventTarget.h +++ b/Userland/Libraries/LibWeb/DOM/EventTarget.h @@ -55,6 +55,7 @@ public: void set_event_handler_attribute(DeprecatedFlyString const& name, WebIDL::CallbackType*); bool has_event_listener(DeprecatedFlyString const& type) const; + bool has_event_listeners() const; protected: explicit EventTarget(JS::Realm&);