1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-25 13:17:35 +00:00

LibWeb: Use FlyString for DOM event names

This commit is contained in:
Andreas Kling 2020-03-22 19:53:22 +01:00
parent 7309642ca8
commit beba585f37
4 changed files with 16 additions and 17 deletions

View file

@ -1,7 +1,6 @@
#pragma once #pragma once
#include <AK/RefCounted.h> #include <AK/FlyString.h>
#include <AK/String.h>
#include <LibWeb/Bindings/Wrappable.h> #include <LibWeb/Bindings/Wrappable.h>
namespace Web { namespace Web {
@ -12,25 +11,25 @@ class Event
public: public:
using WrapperType = Bindings::EventWrapper; using WrapperType = Bindings::EventWrapper;
static NonnullRefPtr<Event> create(String event_name) static NonnullRefPtr<Event> create(const FlyString& event_name)
{ {
return adopt(*new Event(move(event_name))); return adopt(*new Event(event_name));
} }
virtual ~Event() {} virtual ~Event() {}
const String& name() const { return m_event_name; } const FlyString& name() const { return m_event_name; }
virtual bool is_mouse_event() const { return false; } virtual bool is_mouse_event() const { return false; }
protected: protected:
Event(String event_name) Event(const FlyString& event_name)
: m_event_name(move(event_name)) : m_event_name(event_name)
{ {
} }
private: private:
String m_event_name; FlyString m_event_name;
}; };
} }

View file

@ -37,9 +37,9 @@ EventTarget::~EventTarget()
{ {
} }
void EventTarget::add_event_listener(String event_name, NonnullRefPtr<EventListener> listener) void EventTarget::add_event_listener(const FlyString& event_name, NonnullRefPtr<EventListener> listener)
{ {
m_listeners.append({ move(event_name), move(listener) }); m_listeners.append({ event_name, move(listener) });
} }
} }

View file

@ -26,8 +26,8 @@
#pragma once #pragma once
#include <AK/FlyString.h>
#include <AK/Noncopyable.h> #include <AK/Noncopyable.h>
#include <AK/String.h>
#include <AK/Vector.h> #include <AK/Vector.h>
#include <LibWeb/Forward.h> #include <LibWeb/Forward.h>
@ -43,12 +43,12 @@ public:
void ref() { ref_event_target(); } void ref() { ref_event_target(); }
void unref() { unref_event_target(); } void unref() { unref_event_target(); }
void add_event_listener(String event_name, NonnullRefPtr<EventListener>); void add_event_listener(const FlyString& event_name, NonnullRefPtr<EventListener>);
virtual void dispatch_event(NonnullRefPtr<Event>) = 0; virtual void dispatch_event(NonnullRefPtr<Event>) = 0;
struct EventListenerRegistration { struct EventListenerRegistration {
String event_name; FlyString event_name;
NonnullRefPtr<EventListener> listener; NonnullRefPtr<EventListener> listener;
}; };

View file

@ -8,9 +8,9 @@ class MouseEvent final : public Event {
public: public:
using WrapperType = Bindings::MouseEventWrapper; using WrapperType = Bindings::MouseEventWrapper;
static NonnullRefPtr<MouseEvent> create(String event_name, i32 offset_x, i32 offset_y) static NonnullRefPtr<MouseEvent> create(const FlyString& event_name, i32 offset_x, i32 offset_y)
{ {
return adopt(*new MouseEvent(move(event_name), offset_x, offset_y)); return adopt(*new MouseEvent(event_name, offset_x, offset_y));
} }
virtual ~MouseEvent() override {} virtual ~MouseEvent() override {}
@ -19,8 +19,8 @@ public:
i32 offset_y() const { return m_offset_y; } i32 offset_y() const { return m_offset_y; }
protected: protected:
MouseEvent(String event_name, i32 offset_x, i32 offset_y) MouseEvent(const FlyString& event_name, i32 offset_x, i32 offset_y)
: Event(move(event_name)) : Event(event_name)
, m_offset_x(offset_x) , m_offset_x(offset_x)
, m_offset_y(offset_y) , m_offset_y(offset_y)
{ {