summaryrefslogtreecommitdiff
path: root/Userland/Libraries
diff options
context:
space:
mode:
authorAndreas Kling <kling@serenityos.org>2022-02-18 20:40:12 +0100
committerAndreas Kling <kling@serenityos.org>2022-02-19 14:45:59 +0100
commita97586c24a1c06f02f0cf667d367c3a97f45a7dd (patch)
tree96d924fb35aecc0b79e5663b7c7a672821fc6d20 /Userland/Libraries
parentbfe69e9d0d7898a81365b8e782e167c1ba23cbe4 (diff)
downloadserenity-a97586c24a1c06f02f0cf667d367c3a97f45a7dd.zip
LibWeb: Shrink DOM::EventTarget by 80 bytes
Do this by converting two Function members into virtual functions: - legacy_pre_activation_behavior - legacy_cancelled_activation_behavior
Diffstat (limited to 'Userland/Libraries')
-rw-r--r--Userland/Libraries/LibWeb/DOM/EventDispatcher.cpp5
-rw-r--r--Userland/Libraries/LibWeb/DOM/EventTarget.h5
2 files changed, 4 insertions, 6 deletions
diff --git a/Userland/Libraries/LibWeb/DOM/EventDispatcher.cpp b/Userland/Libraries/LibWeb/DOM/EventDispatcher.cpp
index 37e3c2d484..b037ac79d6 100644
--- a/Userland/Libraries/LibWeb/DOM/EventDispatcher.cpp
+++ b/Userland/Libraries/LibWeb/DOM/EventDispatcher.cpp
@@ -283,7 +283,7 @@ bool EventDispatcher::dispatch(NonnullRefPtr<EventTarget> target, NonnullRefPtr<
}
}
- if (activation_target && activation_target->legacy_pre_activation_behavior)
+ if (activation_target)
activation_target->legacy_pre_activation_behavior();
for (ssize_t i = event->path().size() - 1; i >= 0; --i) {
@@ -329,8 +329,7 @@ bool EventDispatcher::dispatch(NonnullRefPtr<EventTarget> target, NonnullRefPtr<
// NOTE: Since activation_target is set, it will have activation behavior.
activation_target->activation_behavior(event);
} else {
- if (activation_target->legacy_cancelled_activation_behavior)
- activation_target->legacy_cancelled_activation_behavior();
+ activation_target->legacy_cancelled_activation_behavior();
}
}
diff --git a/Userland/Libraries/LibWeb/DOM/EventTarget.h b/Userland/Libraries/LibWeb/DOM/EventTarget.h
index db138efa4b..a5c56d9c6c 100644
--- a/Userland/Libraries/LibWeb/DOM/EventTarget.h
+++ b/Userland/Libraries/LibWeb/DOM/EventTarget.h
@@ -7,7 +7,6 @@
#pragma once
#include <AK/FlyString.h>
-#include <AK/Function.h>
#include <AK/Noncopyable.h>
#include <AK/Vector.h>
#include <LibJS/Forward.h>
@@ -50,8 +49,8 @@ public:
Function<void(const Event&)> activation_behavior;
// NOTE: These only exist for checkbox and radio input elements.
- Function<void()> legacy_pre_activation_behavior;
- Function<void()> legacy_cancelled_activation_behavior;
+ virtual void legacy_pre_activation_behavior() { }
+ virtual void legacy_cancelled_activation_behavior() { }
Bindings::CallbackType* event_handler_attribute(FlyString const& name);
void set_event_handler_attribute(FlyString const& name, Optional<Bindings::CallbackType>);