aboutsummaryrefslogtreecommitdiffstats
path: root/components/script/dom/element.rs
diff options
context:
space:
mode:
authorAnthony Ramine <nox@nox.paris>2020-04-27 17:54:06 +0200
committerAnthony Ramine <nox@nox.paris>2020-05-19 16:26:36 +0200
commit036f123c4ee61f72fd123cc0c624df9d604cbb93 (patch)
treed83f5dcae9d96f40d3b0174ba91d0ca0046b5f80 /components/script/dom/element.rs
parent518c0660c6eee711252057bd73f75cd35f3d3215 (diff)
downloadservo-036f123c4ee61f72fd123cc0c624df9d604cbb93.tar.gz
servo-036f123c4ee61f72fd123cc0c624df9d604cbb93.zip
Implement concept of dirty root
Diffstat (limited to 'components/script/dom/element.rs')
-rw-r--r--components/script/dom/element.rs2
1 files changed, 2 insertions, 0 deletions
diff --git a/components/script/dom/element.rs b/components/script/dom/element.rs
index 6f6f33f56a8..458f301e238 100644
--- a/components/script/dom/element.rs
+++ b/components/script/dom/element.rs
@@ -309,6 +309,7 @@ impl Element {
restyle.hint.insert(RestyleHint::RESTYLE_SELF);
if damage == NodeDamage::OtherNodeDamage {
+ doc.note_node_with_dirty_descendants(self.upcast());
restyle.damage = RestyleDamage::rebuild_and_reflow();
}
}
@@ -515,6 +516,7 @@ impl Element {
pub fn detach_shadow(&self) {
if let Some(ref shadow_root) = self.shadow_root() {
+ self.upcast::<Node>().note_dirty_descendants();
shadow_root.detach();
self.ensure_rare_data().shadow_root = None;
} else {