Commit 7225465e authored by Ria Jiang's avatar Ria Jiang Committed by Commit Bot

Skip LocalSurfaceId validation in TransformPoint* for Viz hit-test.

Viz hit-test doesn't need LocalSurfaceId in targeting/ transforming
requests, HitTestQuery has that information; and we don't currently
have a valid one in RenderWidgetHostViewGuest and
RenderWidgetHostViewChildFrame in OOP-D. We could add it in RWHVG/
RWHVCF, but since we don't need it anyway, skip this validation for
Viz hit-test.

Bug: 840893
Change-Id: Ic9bbf9f29fc2016f9c838f781f8cf554c180d61e
Reviewed-on: https://chromium-review.googlesource.com/1050440Reviewed-by: default avatarRobert Kroeger <rjkroege@chromium.org>
Reviewed-by: default avatarAvi Drissman <avi@chromium.org>
Reviewed-by: default avatarKen Buchanan <kenrb@chromium.org>
Commit-Queue: Ria Jiang <riajiang@chromium.org>
Cr-Commit-Position: refs/heads/master@{#557725}
parent 96ccf9f1
......@@ -249,8 +249,11 @@ gfx::Rect RenderWidgetHostViewGuest::GetBoundsInRootWindow() {
gfx::PointF RenderWidgetHostViewGuest::TransformPointToRootCoordSpaceF(
const gfx::PointF& point) {
if (!guest_ || !last_received_local_surface_id_.is_valid())
// LocalSurfaceId is not needed in Viz hit-test.
if (!guest_ ||
(!use_viz_hit_test_ && !last_received_local_surface_id_.is_valid())) {
return point;
}
RenderWidgetHostViewBase* root_rwhv = GetRootView(this);
if (!root_rwhv)
......
......@@ -758,8 +758,11 @@ bool RenderWidgetHostViewChildFrame::HasSize() const {
gfx::PointF RenderWidgetHostViewChildFrame::TransformPointToRootCoordSpaceF(
const gfx::PointF& point) {
if (!frame_connector_ || !last_received_local_surface_id_.is_valid())
// LocalSurfaceId is not needed in Viz hit-test.
if (!frame_connector_ ||
(!use_viz_hit_test_ && !last_received_local_surface_id_.is_valid())) {
return point;
}
return frame_connector_->TransformPointToRootCoordSpace(
point, viz::SurfaceId(frame_sink_id_, last_received_local_surface_id_));
......@@ -784,8 +787,11 @@ bool RenderWidgetHostViewChildFrame::TransformPointToCoordSpaceForView(
RenderWidgetHostViewBase* target_view,
gfx::PointF* transformed_point,
viz::EventSource source) {
if (!frame_connector_ || !last_received_local_surface_id_.is_valid())
// LocalSurfaceId is not needed in Viz hit-test.
if (!frame_connector_ ||
(!use_viz_hit_test_ && !last_received_local_surface_id_.is_valid())) {
return false;
}
if (target_view == this) {
*transformed_point = point;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment