diff --git a/Userland/Libraries/LibWeb/DOM/Document.cpp b/Userland/Libraries/LibWeb/DOM/Document.cpp index 3168b221ac..92492e9b3b 100644 --- a/Userland/Libraries/LibWeb/DOM/Document.cpp +++ b/Userland/Libraries/LibWeb/DOM/Document.cpp @@ -2389,7 +2389,12 @@ bool Document::anything_is_delaying_the_load_event() const if (m_number_of_things_delaying_the_load_event > 0) return true; - // FIXME: Track down all the things that are supposed to delay the load event. + for (auto& navigable : descendant_navigables()) { + if (navigable->container()->currently_delays_the_load_event()) + return true; + } + + // FIXME: Track down anything else that is supposed to delay the load event. return false; } @@ -2595,6 +2600,11 @@ Vector> Document::descendant_navigables() return navigables; } +Vector> const Document::descendant_navigables() const +{ + return const_cast(*this).descendant_navigables(); +} + // https://html.spec.whatwg.org/multipage/document-sequences.html#inclusive-descendant-navigables Vector> Document::inclusive_descendant_navigables() { diff --git a/Userland/Libraries/LibWeb/DOM/Document.h b/Userland/Libraries/LibWeb/DOM/Document.h index bbe9c1bc44..1720e79075 100644 --- a/Userland/Libraries/LibWeb/DOM/Document.h +++ b/Userland/Libraries/LibWeb/DOM/Document.h @@ -473,6 +473,7 @@ public: Vector> list_of_descendant_browsing_contexts() const; Vector> descendant_navigables(); + Vector> const descendant_navigables() const; Vector> inclusive_descendant_navigables(); Vector> ancestor_navigables(); Vector> inclusive_ancestor_navigables();