diff options
author | bors-servo <release+servo@mozilla.com> | 2014-01-31 01:22:18 -0800 |
---|---|---|
committer | bors-servo <release+servo@mozilla.com> | 2014-01-31 01:22:18 -0800 |
commit | 1bf44289b1779bab79b0cb1b3cbf011864fb49d5 (patch) | |
tree | b559fa5add7a0a900ee09e6fcdbe2fc6fbe3c6ca /src/components/script/dom/document.rs | |
parent | e2e848c6adae74b564d6696da5a7f9b346347a08 (diff) | |
parent | 56572a28142978c4e6e620c21c0b3e5497e3e477 (diff) | |
download | servo-1bf44289b1779bab79b0cb1b3cbf011864fb49d5.tar.gz servo-1bf44289b1779bab79b0cb1b3cbf011864fb49d5.zip |
auto merge of #1599 : brunoabinader/servo/document-compatmode, r=Ms2ger
Spec:
http://dom.spec.whatwg.org/#dom-document-compatmode
This is a sub-task for #1428.
Diffstat (limited to 'src/components/script/dom/document.rs')
-rw-r--r-- | src/components/script/dom/document.rs | 20 |
1 files changed, 18 insertions, 2 deletions
diff --git a/src/components/script/dom/document.rs b/src/components/script/dom/document.rs index db6302e34d9..b5d404ca1c2 100644 --- a/src/components/script/dom/document.rs +++ b/src/components/script/dom/document.rs @@ -22,6 +22,7 @@ use dom::uievent::UIEvent; use dom::window::Window; use dom::htmltitleelement::HTMLTitleElement; use html::hubbub_html_parser::build_element_from_tag; +use hubbub::hubbub::{QuirksMode, NoQuirks, LimitedQuirks, FullQuirks}; use layout_interface::{DocumentDamageLevel, ContentChangedDocumentDamage}; use servo_util::namespace::Null; @@ -91,7 +92,8 @@ pub struct Document { idmap: HashMap<DOMString, AbstractNode>, implementation: Option<@mut DOMImplementation>, content_type: DOMString, - url: Url + url: Url, + quirks_mode: QuirksMode } impl Document { @@ -136,7 +138,9 @@ impl Document { url: match url { None => from_str("about:blank").unwrap(), Some(_url) => _url - } + }, + // http://dom.spec.whatwg.org/#concept-document-quirks + quirks_mode: NoQuirks } } @@ -191,6 +195,18 @@ impl Document { self.URL() } + // http://dom.spec.whatwg.org/#dom-document-compatmode + pub fn CompatMode(&self) -> DOMString { + match self.quirks_mode { + NoQuirks => ~"CSS1Compat", + LimitedQuirks | FullQuirks => ~"BackCompat" + } + } + + pub fn set_quirks_mode(&mut self, mode: QuirksMode) { + self.quirks_mode = mode; + } + // http://dom.spec.whatwg.org/#dom-document-content_type pub fn ContentType(&self) -> DOMString { self.content_type.clone() |