From 9d72815deba7ad31c4261889b77f0643680e32c2 Mon Sep 17 00:00:00 2001 From: Sam Atkins Date: Thu, 18 Nov 2021 17:49:43 +0000 Subject: [PATCH] LibWeb: Remove redundant `@import`-handling code from CSSLoader Now that `@import` rules load themselves, we don't want to also load them here. --- .../Libraries/LibWeb/Loader/CSSLoader.cpp | 28 +------------------ Userland/Libraries/LibWeb/Loader/CSSLoader.h | 2 -- 2 files changed, 1 insertion(+), 29 deletions(-) diff --git a/Userland/Libraries/LibWeb/Loader/CSSLoader.cpp b/Userland/Libraries/LibWeb/Loader/CSSLoader.cpp index 89a56d48da..3638a5129d 100644 --- a/Userland/Libraries/LibWeb/Loader/CSSLoader.cpp +++ b/Userland/Libraries/LibWeb/Loader/CSSLoader.cpp @@ -27,8 +27,6 @@ void CSSLoader::load_from_text(const String& text) m_style_sheet = CSS::CSSStyleSheet::create({}); m_style_sheet->set_owner_node(&m_owner_element); } - - load_next_import_if_needed(); } void CSSLoader::load_from_url(const AK::URL& url) @@ -60,20 +58,11 @@ void CSSLoader::resource_did_load() return; } - bool was_imported = m_style_sheet->for_first_not_loaded_import_rule([&](auto& rule) { - rule.set_style_sheet(sheet); - }); - // Transfer the rules from the successfully parsed sheet into the sheet we've already inserted. - // FIXME: @import rules need work. - if (!was_imported) { - m_style_sheet->set_rules(sheet->rules()); - } + m_style_sheet->set_rules(sheet->rules()); if (on_load) on_load(); - - load_next_import_if_needed(); } void CSSLoader::resource_did_fail() @@ -81,21 +70,6 @@ void CSSLoader::resource_did_fail() dbgln_if(CSS_LOADER_DEBUG, "CSSLoader: Resource did fail. URL: {}", resource()->url()); m_document_load_event_delayer.clear(); - - load_next_import_if_needed(); -} - -void CSSLoader::load_next_import_if_needed() -{ - // Create load request for the first import which isn't loaded. - // TODO: We need to somehow handle infinite cycles in imports. - m_style_sheet->for_first_not_loaded_import_rule([&](auto& rule) { - dbgln_if(CSS_LOADER_DEBUG, "CSSLoader: Loading @import {}", rule.url()); - - LoadRequest request; - request.set_url(rule.url()); - set_resource(ResourceLoader::the().load_resource(Resource::Type::Generic, request)); - }); } } diff --git a/Userland/Libraries/LibWeb/Loader/CSSLoader.h b/Userland/Libraries/LibWeb/Loader/CSSLoader.h index 97561f0e2a..9556571702 100644 --- a/Userland/Libraries/LibWeb/Loader/CSSLoader.h +++ b/Userland/Libraries/LibWeb/Loader/CSSLoader.h @@ -21,8 +21,6 @@ public: void load_from_text(const String&); void load_from_url(const AK::URL&); - void load_next_import_if_needed(); - RefPtr style_sheet() const { return m_style_sheet; }; Function on_load;