Jelajahi Sumber

LibWeb: Move HTML::SubmitEvent functions out of line

Andreas Kling 4 tahun lalu
induk
melakukan
0db6835e73

+ 1 - 0
Userland/Libraries/LibWeb/CMakeLists.txt

@@ -140,6 +140,7 @@ set(SOURCES
     HTML/Parser/HTMLTokenizer.cpp
     HTML/Parser/ListOfActiveFormattingElements.cpp
     HTML/Parser/StackOfOpenElements.cpp
+    HTML/SubmitEvent.cpp
     HTML/TagNames.cpp
     HighResolutionTime/Performance.cpp
     InProcessWebView.cpp

+ 52 - 0
Userland/Libraries/LibWeb/HTML/SubmitEvent.cpp

@@ -0,0 +1,52 @@
+/*
+ * Copyright (c) 2021, Andreas Kling <kling@serenityos.org>
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are met:
+ *
+ * 1. Redistributions of source code must retain the above copyright notice, this
+ *    list of conditions and the following disclaimer.
+ *
+ * 2. Redistributions in binary form must reproduce the above copyright notice,
+ *    this list of conditions and the following disclaimer in the documentation
+ *    and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+ * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+ * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
+ * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
+ * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+ * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#include <LibWeb/HTML/HTMLElement.h>
+#include <LibWeb/HTML/SubmitEvent.h>
+
+namespace Web::HTML {
+
+NonnullRefPtr<SubmitEvent> SubmitEvent::create(const FlyString& event_name, RefPtr<HTMLElement> submitter)
+{
+    return adopt(*new SubmitEvent(event_name, move(submitter)));
+}
+
+SubmitEvent::SubmitEvent(const FlyString& event_name, RefPtr<HTMLElement> submitter)
+    : DOM::Event(event_name)
+    , m_submitter(submitter)
+{
+}
+
+SubmitEvent::~SubmitEvent()
+{
+}
+
+RefPtr<HTMLElement> SubmitEvent::submitter() const
+{
+    return m_submitter;
+}
+
+}

+ 5 - 10
Userland/Libraries/LibWeb/HTML/SubmitEvent.h

@@ -34,19 +34,14 @@ class SubmitEvent final : public DOM::Event {
 public:
     using WrapperType = Bindings::SubmitEventWrapper;
 
-    static NonnullRefPtr<SubmitEvent> create(const FlyString& event_name, RefPtr<HTMLElement> submitter)
-    {
-        return adopt(*new SubmitEvent(event_name, submitter));
-    }
+    static NonnullRefPtr<SubmitEvent> create(const FlyString& event_name, RefPtr<HTMLElement> submitter);
 
-    const RefPtr<HTMLElement> submitter() const { return m_submitter; }
+    virtual ~SubmitEvent() override;
+
+    RefPtr<HTMLElement> submitter() const;
 
 private:
-    SubmitEvent(const FlyString& event_name, RefPtr<HTMLElement> submitter)
-        : DOM::Event(event_name)
-        , m_submitter(submitter)
-    {
-    }
+    SubmitEvent(const FlyString& event_name, RefPtr<HTMLElement> submitter);
 
     RefPtr<HTMLElement> m_submitter;
 };