diff options
author | Emilio Cobos Álvarez <emilio@crisal.io> | 2017-10-26 13:20:10 +0200 |
---|---|---|
committer | Emilio Cobos Álvarez <emilio@crisal.io> | 2017-10-26 13:22:31 +0200 |
commit | dd5cd29a6130e0fa97121d6161f038df53f94854 (patch) | |
tree | fcf4ac7958e73cd2a0aa8c31cd68aea1e24f5626 /components/layout_thread/dom_wrapper.rs | |
parent | bfa7cd7d9ecc5f8d7c2a88f4e4bd6577559f9666 (diff) | |
download | servo-dd5cd29a6130e0fa97121d6161f038df53f94854.tar.gz servo-dd5cd29a6130e0fa97121d6161f038df53f94854.zip |
style: Introduce TDocument::is_html_element and TDocument::quirks_mode.
This allows some code to read a bit nicer, and stop passing down quirks mode to
querySelector / querySelectorAll.
Diffstat (limited to 'components/layout_thread/dom_wrapper.rs')
-rw-r--r-- | components/layout_thread/dom_wrapper.rs | 14 |
1 files changed, 11 insertions, 3 deletions
diff --git a/components/layout_thread/dom_wrapper.rs b/components/layout_thread/dom_wrapper.rs index aa039f593e2..e5e6277b013 100644 --- a/components/layout_thread/dom_wrapper.rs +++ b/components/layout_thread/dom_wrapper.rs @@ -51,7 +51,7 @@ use script_layout_interface::{OpaqueStyleAndLayoutData, StyleData}; use script_layout_interface::wrapper_traits::{DangerousThreadSafeLayoutNode, GetLayoutData, LayoutNode}; use script_layout_interface::wrapper_traits::{PseudoElementType, ThreadSafeLayoutElement, ThreadSafeLayoutNode}; use selectors::attr::{AttrSelectorOperation, NamespaceConstraint, CaseSensitivity}; -use selectors::matching::{ElementSelectorFlags, MatchingContext, RelevantLinkStatus}; +use selectors::matching::{ElementSelectorFlags, MatchingContext, QuirksMode, RelevantLinkStatus}; use selectors::matching::VisitedHandlingMode; use selectors::sink::Push; use servo_arc::{Arc, ArcBorrow}; @@ -298,6 +298,14 @@ impl<'ld> TDocument for ServoLayoutDocument<'ld> { fn as_node(&self) -> Self::ConcreteNode { ServoLayoutNode::from_layout_js(self.document.upcast()) } + + fn quirks_mode(&self) -> QuirksMode { + unsafe { self.document.quirks_mode() } + } + + fn is_html_document(&self) -> bool { + unsafe { self.document.is_html_document_for_layout() } + } } impl<'ld> ServoLayoutDocument<'ld> { @@ -785,9 +793,9 @@ impl<'le> ::selectors::Element for ServoLayoutElement<'le> { if !self.element.is_html_element() { return false; } - - self.as_node().node.owner_doc_for_layout().is_html_document_for_layout() } + + self.as_node().owner_doc().is_html_document() } } |