diff options
Diffstat (limited to 'components/script/dom/cssgroupingrule.rs')
-rw-r--r-- | components/script/dom/cssgroupingrule.rs | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/components/script/dom/cssgroupingrule.rs b/components/script/dom/cssgroupingrule.rs index c3fa70de189..3e30104bf61 100644 --- a/components/script/dom/cssgroupingrule.rs +++ b/components/script/dom/cssgroupingrule.rs @@ -5,9 +5,10 @@ use dom_struct::dom_struct; use servo_arc::Arc; use style::shared_lock::{Locked, SharedRwLock}; -use style::stylesheets::CssRules as StyleCssRules; +use style::stylesheets::{CssRuleTypes, CssRules as StyleCssRules}; use crate::dom::bindings::codegen::Bindings::CSSGroupingRuleBinding::CSSGroupingRuleMethods; +use crate::dom::bindings::codegen::Bindings::CSSRuleBinding::CSSRule_Binding::CSSRuleMethods; use crate::dom::bindings::error::{ErrorResult, Fallible}; use crate::dom::bindings::inheritance::Castable; use crate::dom::bindings::reflector::DomObject; @@ -67,7 +68,10 @@ impl CSSGroupingRuleMethods for CSSGroupingRule { // https://drafts.csswg.org/cssom/#dom-cssgroupingrule-insertrule fn InsertRule(&self, rule: DOMString, index: u32) -> Fallible<u32> { - self.rulelist().insert_rule(&rule, index, /* nested */ true) + // TODO: this should accumulate the rule types of all ancestors. + let containing_rule_types = CssRuleTypes::from_bits(self.cssrule.Type().into()); + self.rulelist() + .insert_rule(&rule, index, containing_rule_types) } // https://drafts.csswg.org/cssom/#dom-cssgroupingrule-deleterule |