summaryrefslogtreecommitdiff
path: root/Userland/Libraries/LibWeb/HTML/CloseEvent.h
diff options
context:
space:
mode:
authorDexesTTP <dexes.ttp@gmail.com>2021-04-24 13:54:24 +0200
committerLinus Groh <mail@linusgroh.de>2021-04-25 19:04:34 +0200
commit22413ef729ffe995c5ef3a9f8fb69567ed913980 (patch)
tree5c8c539ea68d32b18d3db961a2912879e8361d03 /Userland/Libraries/LibWeb/HTML/CloseEvent.h
parent68bfb46a6fef9aa1b6617382ae4cf10042658e26 (diff)
downloadserenity-22413ef729ffe995c5ef3a9f8fb69567ed913980.zip
LibWeb: Add WebSocket bindings
The WebSocket bindings match the original specification from the WHATWG living standard, but do not match the later update of the standard that involves FETCH. The FETCH update will be handled later since the changes would also affect XMLHttpRequest.
Diffstat (limited to 'Userland/Libraries/LibWeb/HTML/CloseEvent.h')
-rw-r--r--Userland/Libraries/LibWeb/HTML/CloseEvent.h42
1 files changed, 42 insertions, 0 deletions
diff --git a/Userland/Libraries/LibWeb/HTML/CloseEvent.h b/Userland/Libraries/LibWeb/HTML/CloseEvent.h
new file mode 100644
index 0000000000..9c0e71064b
--- /dev/null
+++ b/Userland/Libraries/LibWeb/HTML/CloseEvent.h
@@ -0,0 +1,42 @@
+/*
+ * Copyright (c) 2021, Dexβ™ͺ <dexes.ttp@gmail.com>
+ *
+ * SPDX-License-Identifier: BSD-2-Clause
+ */
+
+#pragma once
+
+#include <LibWeb/DOM/Event.h>
+
+namespace Web::HTML {
+
+class CloseEvent : public DOM::Event {
+public:
+ using WrapperType = Bindings::CloseEventWrapper;
+
+ static NonnullRefPtr<CloseEvent> create(const FlyString& event_name, bool was_clean, u16 code, const String& reason)
+ {
+ return adopt_ref(*new CloseEvent(event_name, was_clean, code, reason));
+ }
+
+ virtual ~CloseEvent() override = default;
+
+ bool was_clean() { return m_was_clean; }
+ u16 code() const { return m_code; }
+ String reason() const { return m_reason; }
+
+protected:
+ CloseEvent(const FlyString& event_name, bool was_clean, u16 code, const String& reason)
+ : Event(event_name)
+ , m_was_clean(was_clean)
+ , m_code(code)
+ , m_reason(reason)
+ {
+ }
+
+ bool m_was_clean { false };
+ u16 m_code { 0 };
+ String m_reason;
+};
+
+}