From 575e3bf37dc66023c0fb47b93ca3104c85bae683 Mon Sep 17 00:00:00 2001 From: Andreas Kling Date: Sun, 18 Sep 2022 10:29:53 +0200 Subject: [PATCH] LibWeb: Check document fully active status in "element cannot navigate" This resolves a FIXME and brings us closer to spec. --- Userland/Libraries/LibWeb/HTML/HTMLElement.cpp | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/Userland/Libraries/LibWeb/HTML/HTMLElement.cpp b/Userland/Libraries/LibWeb/HTML/HTMLElement.cpp index 390e5728b2..6f12735db7 100644 --- a/Userland/Libraries/LibWeb/HTML/HTMLElement.cpp +++ b/Userland/Libraries/LibWeb/HTML/HTMLElement.cpp @@ -196,9 +196,16 @@ int HTMLElement::offset_height() const return paint_box()->border_box_height(); } +// https://html.spec.whatwg.org/multipage/links.html#cannot-navigate bool HTMLElement::cannot_navigate() const { - // FIXME: Return true if element's node document is not fully active + // An element element cannot navigate if one of the following is true: + + // - element's node document is not fully active + if (!document().is_fully_active()) + return true; + + // - element is not an a element and is not connected. return !is(this) && !is_connected(); }