diff options
author | Anthony Ramine <nox@nox.paris> | 2020-04-27 17:54:06 +0200 |
---|---|---|
committer | Anthony Ramine <nox@nox.paris> | 2020-05-19 16:26:36 +0200 |
commit | 036f123c4ee61f72fd123cc0c624df9d604cbb93 (patch) | |
tree | d83f5dcae9d96f40d3b0174ba91d0ca0046b5f80 /components/script/dom/element.rs | |
parent | 518c0660c6eee711252057bd73f75cd35f3d3215 (diff) | |
download | servo-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.rs | 2 |
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 { |