aboutsummaryrefslogtreecommitdiffstats
path: root/components/script/dom/node.rs
diff options
context:
space:
mode:
authorFernando Jiménez Moreno <ferjmoreno@gmail.com>2019-03-06 16:05:59 +0100
committerFernando Jiménez Moreno <ferjmoreno@gmail.com>2019-04-26 11:31:19 +0200
commita9019da39d5a47e62f51aa3ab568389daccbe9bd (patch)
treeb3a5aaf791c84f42febcd8134ab8b3e3b8dd7e2d /components/script/dom/node.rs
parent6af4729f42fc7d663a6b6ede5588732ec80e7dc8 (diff)
downloadservo-a9019da39d5a47e62f51aa3ab568389daccbe9bd.tar.gz
servo-a9019da39d5a47e62f51aa3ab568389daccbe9bd.zip
Move mutation observers list to NodeRareData
Diffstat (limited to 'components/script/dom/node.rs')
-rw-r--r--components/script/dom/node.rs11
1 files changed, 3 insertions, 8 deletions
diff --git a/components/script/dom/node.rs b/components/script/dom/node.rs
index f8b6de5cb24..f93679a3976 100644
--- a/components/script/dom/node.rs
+++ b/components/script/dom/node.rs
@@ -5,7 +5,6 @@
//! The core DOM types. Defines the basic DOM hierarchy as well as all the HTML elements.
use crate::document_loader::DocumentLoader;
-use crate::dom::bindings::cell::DomRefCell;
use crate::dom::bindings::codegen::Bindings::CharacterDataBinding::CharacterDataMethods;
use crate::dom::bindings::codegen::Bindings::DocumentBinding::DocumentMethods;
use crate::dom::bindings::codegen::Bindings::ElementBinding::ElementMethods;
@@ -152,9 +151,6 @@ pub struct Node {
/// node is finalized.
style_and_layout_data: Cell<Option<OpaqueStyleAndLayoutData>>,
- /// Registered observers for this node.
- mutation_observers: DomRefCell<Vec<RegisteredObserver>>,
-
unique_id: UniqueId,
}
@@ -454,12 +450,13 @@ impl Node {
/// Return all registered mutation observers for this node.
pub fn registered_mutation_observers(&self) -> RefMut<Vec<RegisteredObserver>> {
- self.mutation_observers.borrow_mut()
+ self.rare_data.mutation_observers.borrow_mut()
}
/// Removes the mutation observer for a given node.
pub fn remove_mutation_observer(&self, observer: &MutationObserver) {
- self.mutation_observers
+ self.rare_data
+ .mutation_observers
.borrow_mut()
.retain(|reg_obs| &*reg_obs.observer != observer)
}
@@ -1652,8 +1649,6 @@ impl Node {
style_and_layout_data: Cell::new(None),
- mutation_observers: Default::default(),
-
unique_id: UniqueId::new(),
}
}