dom: getElementsFromPoint does the hit testing on viewport coordinates.

We got this wrong, I was just writing a test for #12777 when I found this.
This commit is contained in:
Emilio Cobos Álvarez 2016-08-10 19:33:40 -07:00
parent 3c7de6b821
commit f9c0f2df13
No known key found for this signature in database
GPG key ID: 056B727BB9C1027C
4 changed files with 56 additions and 6 deletions

View file

@ -1583,12 +1583,12 @@ impl Document {
self.browsing_context.is_none() || !url_has_network_scheme(&self.url)
}
pub fn nodes_from_point(&self, page_point: &Point2D<f32>) -> Vec<UntrustedNodeAddress> {
let client_point =
Point2D::new(page_point.x - self.window.PageXOffset() as f32,
page_point.y - self.window.PageYOffset() as f32);
pub fn nodes_from_point(&self, client_point: &Point2D<f32>) -> Vec<UntrustedNodeAddress> {
let page_point =
Point2D::new(client_point.x + self.window.PageXOffset() as f32,
client_point.y + self.window.PageYOffset() as f32);
self.window.layout().nodes_from_point(*page_point, client_point)
self.window.layout().nodes_from_point(page_point, *client_point)
}
}