diff options
author | Dongie Agnir <dongie.agnir@gmail.com> | 2015-10-23 13:16:52 -1000 |
---|---|---|
committer | Dongie Agnir <dongie.agnir@gmail.com> | 2015-10-23 13:16:52 -1000 |
commit | 663801ed79eefc6d20511cade9efb6cdf6e905dc (patch) | |
tree | e079ecccba3f9fa715789c4d42d220a43812d26d /components/script/dom/htmloptionelement.rs | |
parent | c070c7ad30daac0ace04250a47dc17cb03d7a39d (diff) | |
download | servo-663801ed79eefc6d20511cade9efb6cdf6e905dc.tar.gz servo-663801ed79eefc6d20511cade9efb6cdf6e905dc.zip |
ask for reset and pick on option insert.
Diffstat (limited to 'components/script/dom/htmloptionelement.rs')
-rw-r--r-- | components/script/dom/htmloptionelement.rs | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/components/script/dom/htmloptionelement.rs b/components/script/dom/htmloptionelement.rs index c88919e968b..c4fa7267301 100644 --- a/components/script/dom/htmloptionelement.rs +++ b/components/script/dom/htmloptionelement.rs @@ -197,6 +197,15 @@ impl VirtualMethods for HTMLOptionElement { } self.upcast::<Element>().check_parent_disabled_state_for_option(); + + let node = self.upcast::<Node>(); + if self.Selected() { + if let Some(select) = node.ancestors() + .filter_map(Root::downcast::<HTMLSelectElement>) + .next() { + select.pick_option(self); + } + } } fn unbind_from_tree(&self, tree_in_doc: bool) { |