summaryrefslogtreecommitdiff
path: root/Userland/Libraries/LibWeb/HTML/HTMLLinkElement.h
diff options
context:
space:
mode:
authorSam Atkins <atkinssj@serenityos.org>2021-11-18 19:22:59 +0000
committerAndreas Kling <kling@serenityos.org>2021-11-18 21:11:19 +0100
commit60867703c0a450787c486353f4b819e0dc5b3a68 (patch)
tree61b5c4e2d7b8b3b56e5080edfe74cb548c21bdd5 /Userland/Libraries/LibWeb/HTML/HTMLLinkElement.h
parent6fc1810190f05fddc296a5b56e15ee7cf0a2863c (diff)
downloadserenity-60867703c0a450787c486353f4b819e0dc5b3a68.zip
LibWeb: Make HTMLLinkElement responsible for its own loading
This is the last use of CSSLoader, which can now be deleted.
Diffstat (limited to 'Userland/Libraries/LibWeb/HTML/HTMLLinkElement.h')
-rw-r--r--Userland/Libraries/LibWeb/HTML/HTMLLinkElement.h13
1 files changed, 10 insertions, 3 deletions
diff --git a/Userland/Libraries/LibWeb/HTML/HTMLLinkElement.h b/Userland/Libraries/LibWeb/HTML/HTMLLinkElement.h
index 3405c92a99..c95298bc9e 100644
--- a/Userland/Libraries/LibWeb/HTML/HTMLLinkElement.h
+++ b/Userland/Libraries/LibWeb/HTML/HTMLLinkElement.h
@@ -1,18 +1,21 @@
/*
* Copyright (c) 2018-2020, Andreas Kling <kling@serenityos.org>
* Copyright (c) 2021, the SerenityOS developers.
+ * Copyright (c) 2021, Sam Atkins <atkinssj@serenityos.org>
*
* SPDX-License-Identifier: BSD-2-Clause
*/
#pragma once
+#include <LibWeb/DOM/DocumentLoadEventDelayer.h>
#include <LibWeb/HTML/HTMLElement.h>
-#include <LibWeb/Loader/CSSLoader.h>
namespace Web::HTML {
-class HTMLLinkElement final : public HTMLElement {
+class HTMLLinkElement final
+ : public HTMLElement
+ , public ResourceClient {
public:
using WrapperType = Bindings::HTMLLinkElementWrapper;
@@ -28,6 +31,10 @@ public:
private:
void parse_attribute(const FlyString&, const String&) override;
+ // ^ResourceClient
+ virtual void resource_did_fail() override;
+ virtual void resource_did_load() override;
+
struct Relationship {
enum {
Alternate = 1 << 0,
@@ -40,7 +47,7 @@ private:
RefPtr<Resource> m_preload_resource;
- CSSLoader m_css_loader;
+ Optional<DOM::DocumentLoadEventDelayer> m_document_load_event_delayer;
unsigned m_relationship { 0 };
};