summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKenneth Myhra <kennethmyhra@gmail.com>2023-03-05 09:54:17 +0100
committerLinus Groh <mail@linusgroh.de>2023-03-05 18:25:59 +0000
commite661f03ffae146f70ba3c81ffe8cc2f2c50dd1ba (patch)
tree92be8fd1707107fa19c16b5c8cef8772699d797e
parentd0f904dd4c38ecc4b5583e3f31ec3f563f0d91ba (diff)
downloadserenity-e661f03ffae146f70ba3c81ffe8cc2f2c50dd1ba.zip
LibWeb: Port CloseEvent to new String
-rw-r--r--Userland/Libraries/LibWeb/HTML/CloseEvent.cpp8
-rw-r--r--Userland/Libraries/LibWeb/HTML/CloseEvent.h13
-rw-r--r--Userland/Libraries/LibWeb/HTML/CloseEvent.idl2
-rw-r--r--Userland/Libraries/LibWeb/WebSockets/WebSocket.cpp4
4 files changed, 14 insertions, 13 deletions
diff --git a/Userland/Libraries/LibWeb/HTML/CloseEvent.cpp b/Userland/Libraries/LibWeb/HTML/CloseEvent.cpp
index a761e47847..a0cc164a04 100644
--- a/Userland/Libraries/LibWeb/HTML/CloseEvent.cpp
+++ b/Userland/Libraries/LibWeb/HTML/CloseEvent.cpp
@@ -9,18 +9,18 @@
namespace Web::HTML {
-WebIDL::ExceptionOr<JS::NonnullGCPtr<CloseEvent>> CloseEvent::create(JS::Realm& realm, DeprecatedFlyString const& event_name, CloseEventInit const& event_init)
+WebIDL::ExceptionOr<JS::NonnullGCPtr<CloseEvent>> CloseEvent::create(JS::Realm& realm, FlyString const& event_name, CloseEventInit const& event_init)
{
return MUST_OR_THROW_OOM(realm.heap().allocate<CloseEvent>(realm, realm, event_name, event_init));
}
-WebIDL::ExceptionOr<JS::NonnullGCPtr<CloseEvent>> CloseEvent::construct_impl(JS::Realm& realm, DeprecatedFlyString const& event_name, CloseEventInit const& event_init)
+WebIDL::ExceptionOr<JS::NonnullGCPtr<CloseEvent>> CloseEvent::construct_impl(JS::Realm& realm, FlyString const& event_name, CloseEventInit const& event_init)
{
return create(realm, event_name, event_init);
}
-CloseEvent::CloseEvent(JS::Realm& realm, DeprecatedFlyString const& event_name, CloseEventInit const& event_init)
- : DOM::Event(realm, event_name, event_init)
+CloseEvent::CloseEvent(JS::Realm& realm, FlyString const& event_name, CloseEventInit const& event_init)
+ : DOM::Event(realm, event_name.to_deprecated_fly_string(), event_init)
, m_was_clean(event_init.was_clean)
, m_code(event_init.code)
, m_reason(event_init.reason)
diff --git a/Userland/Libraries/LibWeb/HTML/CloseEvent.h b/Userland/Libraries/LibWeb/HTML/CloseEvent.h
index d69334eecf..c0ef93a85d 100644
--- a/Userland/Libraries/LibWeb/HTML/CloseEvent.h
+++ b/Userland/Libraries/LibWeb/HTML/CloseEvent.h
@@ -7,6 +7,7 @@
#pragma once
+#include <AK/FlyString.h>
#include <LibWeb/DOM/Event.h>
namespace Web::HTML {
@@ -14,30 +15,30 @@ namespace Web::HTML {
struct CloseEventInit : public DOM::EventInit {
bool was_clean { false };
u16 code { 0 };
- DeprecatedString reason { "" };
+ String reason;
};
class CloseEvent : public DOM::Event {
WEB_PLATFORM_OBJECT(CloseEvent, DOM::Event);
public:
- static WebIDL::ExceptionOr<JS::NonnullGCPtr<CloseEvent>> create(JS::Realm&, DeprecatedFlyString const& event_name, CloseEventInit const& event_init = {});
- static WebIDL::ExceptionOr<JS::NonnullGCPtr<CloseEvent>> construct_impl(JS::Realm&, DeprecatedFlyString const& event_name, CloseEventInit const& event_init);
+ static WebIDL::ExceptionOr<JS::NonnullGCPtr<CloseEvent>> create(JS::Realm&, FlyString const& event_name, CloseEventInit const& event_init = {});
+ static WebIDL::ExceptionOr<JS::NonnullGCPtr<CloseEvent>> construct_impl(JS::Realm&, FlyString const& event_name, CloseEventInit const& event_init);
virtual ~CloseEvent() override;
bool was_clean() const { return m_was_clean; }
u16 code() const { return m_code; }
- DeprecatedString reason() const { return m_reason; }
+ String reason() const { return m_reason; }
private:
- CloseEvent(JS::Realm&, DeprecatedFlyString const& event_name, CloseEventInit const& event_init);
+ CloseEvent(JS::Realm&, FlyString const& event_name, CloseEventInit const& event_init);
virtual JS::ThrowCompletionOr<void> initialize(JS::Realm&) override;
bool m_was_clean { false };
u16 m_code { 0 };
- DeprecatedString m_reason;
+ String m_reason;
};
}
diff --git a/Userland/Libraries/LibWeb/HTML/CloseEvent.idl b/Userland/Libraries/LibWeb/HTML/CloseEvent.idl
index 389486f3ab..71f30a3ca8 100644
--- a/Userland/Libraries/LibWeb/HTML/CloseEvent.idl
+++ b/Userland/Libraries/LibWeb/HTML/CloseEvent.idl
@@ -1,6 +1,6 @@
#import <DOM/Event.idl>
-[Exposed=*]
+[Exposed=*, UseNewAKString]
interface CloseEvent : Event {
constructor(DOMString type, optional CloseEventInit eventInitDict = {});
diff --git a/Userland/Libraries/LibWeb/WebSockets/WebSocket.cpp b/Userland/Libraries/LibWeb/WebSockets/WebSocket.cpp
index b0557d189d..07b7d6c78e 100644
--- a/Userland/Libraries/LibWeb/WebSockets/WebSocket.cpp
+++ b/Userland/Libraries/LibWeb/WebSockets/WebSocket.cpp
@@ -221,8 +221,8 @@ void WebSocket::on_close(u16 code, DeprecatedString reason, bool was_clean)
HTML::CloseEventInit event_init {};
event_init.was_clean = was_clean;
event_init.code = code;
- event_init.reason = move(reason);
- dispatch_event(HTML::CloseEvent::create(realm(), HTML::EventNames::close, event_init).release_value_but_fixme_should_propagate_errors());
+ event_init.reason = String::from_deprecated_string(reason).release_value_but_fixme_should_propagate_errors();
+ dispatch_event(HTML::CloseEvent::create(realm(), String::from_deprecated_string(HTML::EventNames::close.view()).release_value_but_fixme_should_propagate_errors(), event_init).release_value_but_fixme_should_propagate_errors());
}
// https://websockets.spec.whatwg.org/#feedback-from-the-protocol