diff options
Diffstat (limited to 'components/script/dom')
-rw-r--r-- | components/script/dom/htmlinputelement.rs | 16 | ||||
-rw-r--r-- | components/script/dom/htmltextareaelement.rs | 13 |
2 files changed, 9 insertions, 20 deletions
diff --git a/components/script/dom/htmlinputelement.rs b/components/script/dom/htmlinputelement.rs index e14a91ae9d7..e2434d60759 100644 --- a/components/script/dom/htmlinputelement.rs +++ b/components/script/dom/htmlinputelement.rs @@ -200,6 +200,7 @@ impl HTMLInputElement { text_input.selection_begin = Some(text_input.get_text_point_for_absolute_point(start)); text_input.edit_point = text_input.get_text_point_for_absolute_point(end); self.selection_direction.set(*direction); + self.upcast::<Node>().dirty(NodeDamage::OtherNodeDamage); } } @@ -401,7 +402,7 @@ impl HTMLInputElementMethods for HTMLInputElement { } self.value_changed.set(true); - self.force_relayout(); + self.upcast::<Node>().dirty(NodeDamage::OtherNodeDamage); Ok(()) } @@ -586,11 +587,6 @@ fn in_same_group(other: &HTMLInputElement, owner: Option<&HTMLFormElement>, } impl HTMLInputElement { - fn force_relayout(&self) { - let doc = document_from_node(self); - doc.content_changed(self.upcast(), NodeDamage::OtherNodeDamage) - } - fn radio_group_updated(&self, group: Option<&Atom>) { if self.Checked() { broadcast_radio_checked(self, group); @@ -654,7 +650,7 @@ impl HTMLInputElement { self.get_radio_group_name().as_ref()); } - self.force_relayout(); + self.upcast::<Node>().dirty(NodeDamage::OtherNodeDamage); //TODO: dispatch change event } @@ -684,7 +680,7 @@ impl HTMLInputElement { .expect("Failed to reset input value to default."); self.value_dirty.set(false); self.value_changed.set(false); - self.force_relayout(); + self.upcast::<Node>().dirty(NodeDamage::OtherNodeDamage); } } @@ -889,11 +885,11 @@ impl VirtualMethods for HTMLInputElement { ChangeEventRunnable::send(self.upcast::<Node>()); } - self.force_relayout(); + self.upcast::<Node>().dirty(NodeDamage::OtherNodeDamage); event.PreventDefault(); } RedrawSelection => { - self.force_relayout(); + self.upcast::<Node>().dirty(NodeDamage::OtherNodeDamage); event.PreventDefault(); } Nothing => (), diff --git a/components/script/dom/htmltextareaelement.rs b/components/script/dom/htmltextareaelement.rs index 8b57d638adb..50f34c9ff85 100644 --- a/components/script/dom/htmltextareaelement.rs +++ b/components/script/dom/htmltextareaelement.rs @@ -209,7 +209,7 @@ impl HTMLTextAreaElementMethods for HTMLTextAreaElement { self.textinput.borrow_mut().set_content(value); self.value_changed.set(true); - self.force_relayout(); + self.upcast::<Node>().dirty(NodeDamage::OtherNodeDamage); } // https://html.spec.whatwg.org/multipage/#dom-lfe-labels @@ -233,13 +233,6 @@ impl HTMLTextAreaElement { } -impl HTMLTextAreaElement { - fn force_relayout(&self) { - let doc = document_from_node(self); - doc.content_changed(self.upcast(), NodeDamage::OtherNodeDamage) - } -} - impl VirtualMethods for HTMLTextAreaElement { fn super_type(&self) -> Option<&VirtualMethods> { Some(self.upcast::<HTMLElement>() as &VirtualMethods) @@ -324,11 +317,11 @@ impl VirtualMethods for HTMLTextAreaElement { ChangeEventRunnable::send(self.upcast::<Node>()); } - self.force_relayout(); + self.upcast::<Node>().dirty(NodeDamage::OtherNodeDamage); event.PreventDefault(); } KeyReaction::RedrawSelection => { - self.force_relayout(); + self.upcast::<Node>().dirty(NodeDamage::OtherNodeDamage); event.PreventDefault(); } KeyReaction::Nothing => (), |