aboutsummaryrefslogtreecommitdiffstats
path: root/components/layout_thread/dom_wrapper.rs
diff options
context:
space:
mode:
authorEmilio Cobos Álvarez <emilio@crisal.io>2017-10-26 13:20:10 +0200
committerEmilio Cobos Álvarez <emilio@crisal.io>2017-10-26 13:22:31 +0200
commitdd5cd29a6130e0fa97121d6161f038df53f94854 (patch)
treefcf4ac7958e73cd2a0aa8c31cd68aea1e24f5626 /components/layout_thread/dom_wrapper.rs
parentbfa7cd7d9ecc5f8d7c2a88f4e4bd6577559f9666 (diff)
downloadservo-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.rs14
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()
}
}