From 8108fc465ac6d7742bafc7a8bfc2077ed2e23081 Mon Sep 17 00:00:00 2001 From: Manish Goregaokar Date: Thu, 17 Nov 2016 16:53:54 -0800 Subject: [PATCH] Add CSSNamespaceRule.{namespaceURI, prefix} --- components/script/dom/cssnamespacerule.rs | 15 +++++++++++++++ .../script/dom/webidls/CSSNamespaceRule.webidl | 4 ++-- components/style/keyframes.rs | 2 +- 3 files changed, 18 insertions(+), 3 deletions(-) diff --git a/components/script/dom/cssnamespacerule.rs b/components/script/dom/cssnamespacerule.rs index e7de369584d..4e93eea2e1f 100644 --- a/components/script/dom/cssnamespacerule.rs +++ b/components/script/dom/cssnamespacerule.rs @@ -3,6 +3,7 @@ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ use dom::bindings::codegen::Bindings::CSSNamespaceRuleBinding; +use dom::bindings::codegen::Bindings::CSSNamespaceRuleBinding::CSSNamespaceRuleMethods; use dom::bindings::js::Root; use dom::bindings::reflector::reflect_dom_object; use dom::bindings::str::DOMString; @@ -38,6 +39,20 @@ impl CSSNamespaceRule { } } +impl CSSNamespaceRuleMethods for CSSNamespaceRule { + // https://drafts.csswg.org/cssom/#dom-cssnamespacerule-prefix + fn Prefix(&self) -> DOMString { + self.namespacerule.read().prefix + .as_ref().map(|s| s.to_string().into()) + .unwrap_or(DOMString::new()) + } + + // https://drafts.csswg.org/cssom/#dom-cssnamespacerule-namespaceuri + fn NamespaceURI(&self) -> DOMString { + (*self.namespacerule.read().url).into() + } +} + impl SpecificCSSRule for CSSNamespaceRule { fn ty(&self) -> u16 { use dom::bindings::codegen::Bindings::CSSRuleBinding::CSSRuleConstants; diff --git a/components/script/dom/webidls/CSSNamespaceRule.webidl b/components/script/dom/webidls/CSSNamespaceRule.webidl index a8d6b61548f..aa1ce87e289 100644 --- a/components/script/dom/webidls/CSSNamespaceRule.webidl +++ b/components/script/dom/webidls/CSSNamespaceRule.webidl @@ -5,6 +5,6 @@ // https://drafts.csswg.org/cssom/#the-cssnamespacerule-interface [Exposed=Window] interface CSSNamespaceRule : CSSRule { - // readonly attribute DOMString namespaceURI; - // readonly attribute DOMString prefix; + readonly attribute DOMString namespaceURI; + readonly attribute DOMString prefix; }; diff --git a/components/style/keyframes.rs b/components/style/keyframes.rs index b74dd73a4de..884c5fef86b 100644 --- a/components/style/keyframes.rs +++ b/components/style/keyframes.rs @@ -10,9 +10,9 @@ use properties::{Importance, PropertyDeclaration, PropertyDeclarationBlock}; use properties::PropertyDeclarationParseResult; use properties::animated_properties::TransitionProperty; use std::fmt; +use servo_url::ServoUrl; use std::sync::Arc; use stylesheets::{MemoryHoleReporter, Origin}; -use servo_url::ServoUrl; use style_traits::ToCss; /// A number from 1 to 100, indicating the percentage of the animation where