Auto merge of #8282 - Ms2ger:handle_mouse_move_event, r=Manishearth

Cleanup Document::handle_mouse_move_event a bit.



<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/8282)
<!-- Reviewable:end -->
This commit is contained in:
bors-servo 2015-10-31 18:57:31 +05:30
commit 912359fcbd

View file

@ -671,14 +671,13 @@ impl Document {
prev_mouse_over_targets: &mut RootedVec<JS<Element>>) { prev_mouse_over_targets: &mut RootedVec<JS<Element>>) {
// Build a list of elements that are currently under the mouse. // Build a list of elements that are currently under the mouse.
let mouse_over_addresses = self.get_nodes_under_mouse(&point); let mouse_over_addresses = self.get_nodes_under_mouse(&point);
let mut mouse_over_targets: RootedVec<JS<Element>> = RootedVec::new(); let mut mouse_over_targets = mouse_over_addresses.iter().map(|node_address| {
for node_address in &mouse_over_addresses { node::from_untrusted_node_address(js_runtime, *node_address)
let node = node::from_untrusted_node_address(js_runtime, *node_address); .inclusive_ancestors()
mouse_over_targets.push(node.r().inclusive_ancestors() .filter_map(Root::downcast::<Element>)
.find(|node| node.is::<Element>()) .next()
.map(|node| JS::from_ref(node.downcast::<Element>().unwrap())) .unwrap()
.unwrap()); }).collect::<RootedVec<JS<Element>>>();
};
// Remove hover from any elements in the previous list that are no longer // Remove hover from any elements in the previous list that are no longer
// under the mouse. // under the mouse.