New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 806144 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Closed: Feb 2018
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 1
Type: Bug

Blocking:
issue 672311
issue 810128



Sign in to add a comment

prepare and submit hit-test data from browser

Project Member Reported by riajiang@chromium.org, Jan 26 2018

Issue description

Browser uses DirectLayerTreeFrameSink::SubmitCompositorFrame to submit
its compositor frame. We need to prepare and submit hit-test data along
with compositor frame.

 

Comment 1 by sadrul@chromium.org, Jan 26 2018

Labels: -Pri-3 Pri-1
Project Member

Comment 2 by bugdroid1@chromium.org, Feb 6 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/0f657c5e05db4b1445e87977910483a7f203954c

commit 0f657c5e05db4b1445e87977910483a7f203954c
Author: Ria Jiang <riajiang@chromium.org>
Date: Tue Feb 06 00:42:21 2018

Prepare and submit hit-test data from browser.

Browser uses DirectLayerTreeFrameSink::SubmitCompositorFrame to submit
its compositor frame. We need to prepare and submit hit-test data along
with the compositor frame.

This CL prepares the hit-test data for browser, which contains bounds
and flags for itself, and contains hit-test data for the renderers that
this browser embeds in the hit-test regions list - by walking through
every DrawQuad in browser's RenderPassList to find SURFACE_CONTENT ones.

Bug:  806144 
Test: viz_unittests
Cq-Include-Trybots: master.tryserver.chromium.android:android_optional_gpu_tests_rel
Change-Id: I11fab7857360a7d589879308ff74ebdd24958469
Reviewed-on: https://chromium-review.googlesource.com/888200
Reviewed-by: Robert Kroeger <rjkroege@chromium.org>
Reviewed-by: Sadrul Chowdhury <sadrul@chromium.org>
Commit-Queue: Ria Jiang <riajiang@chromium.org>
Cr-Commit-Position: refs/heads/master@{#534558}
[modify] https://crrev.com/0f657c5e05db4b1445e87977910483a7f203954c/components/viz/service/frame_sinks/compositor_frame_sink_support.cc
[modify] https://crrev.com/0f657c5e05db4b1445e87977910483a7f203954c/components/viz/service/frame_sinks/direct_layer_tree_frame_sink.cc
[modify] https://crrev.com/0f657c5e05db4b1445e87977910483a7f203954c/components/viz/service/frame_sinks/direct_layer_tree_frame_sink.h
[modify] https://crrev.com/0f657c5e05db4b1445e87977910483a7f203954c/components/viz/service/frame_sinks/direct_layer_tree_frame_sink_unittest.cc

Comment 3 by kenrb@chromium.org, Feb 6 2018

Blocking: 780279

Comment 4 by kenrb@chromium.org, Feb 6 2018

Blocking: -780279

Comment 5 by kenrb@chromium.org, Feb 7 2018

Blocking: 810128
Project Member

Comment 6 by bugdroid1@chromium.org, Feb 9 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/fe0ca107e6b7784b1488c465177a87456926a65c

commit fe0ca107e6b7784b1488c465177a87456926a65c
Author: Ria Jiang <riajiang@chromium.org>
Date: Fri Feb 09 20:12:14 2018

Use the inverse transform when preparing hit-test data for browser.

When browser submits hit-test data for the renderer it embeds, use the
inverse of SharedQuadState::quad_to_target_transform because we expect
transform to be from parent to child in HitTestQuery.

Bug:  806144 
Test: viz_unittests
Cq-Include-Trybots: master.tryserver.chromium.android:android_optional_gpu_tests_rel
Change-Id: I7a8f3d9ad30d7839603ef9bb1439c8d0aaff0a7a
Reviewed-on: https://chromium-review.googlesource.com/907400
Reviewed-by: Yi Xu <yiyix@chromium.org>
Reviewed-by: Sadrul Chowdhury <sadrul@chromium.org>
Commit-Queue: Ria Jiang <riajiang@chromium.org>
Cr-Commit-Position: refs/heads/master@{#535798}
[modify] https://crrev.com/fe0ca107e6b7784b1488c465177a87456926a65c/components/viz/service/frame_sinks/direct_layer_tree_frame_sink.cc
[modify] https://crrev.com/fe0ca107e6b7784b1488c465177a87456926a65c/components/viz/service/frame_sinks/direct_layer_tree_frame_sink_unittest.cc

Project Member

Comment 7 by bugdroid1@chromium.org, Feb 13 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/15ae8f16cbad299b2a98a051b621a9d15c42201b

commit 15ae8f16cbad299b2a98a051b621a9d15c42201b
Author: Ria Jiang <riajiang@chromium.org>
Date: Tue Feb 13 16:59:14 2018

Set event handling flags in browser hit-test data.

Browser should set mouse and touch event handling flags when preparing
its and its renderers' hit-test data.

Bug:  806144 
Test: viz_unittests
Cq-Include-Trybots: master.tryserver.chromium.android:android_optional_gpu_tests_rel
Change-Id: I3cc2a564400b690c1ae7f1cb9c079cfdf4b2b43c
Reviewed-on: https://chromium-review.googlesource.com/916402
Reviewed-by: Robert Kroeger <rjkroege@chromium.org>
Commit-Queue: Ria Jiang <riajiang@chromium.org>
Cr-Commit-Position: refs/heads/master@{#536389}
[modify] https://crrev.com/15ae8f16cbad299b2a98a051b621a9d15c42201b/components/viz/service/frame_sinks/direct_layer_tree_frame_sink.cc
[modify] https://crrev.com/15ae8f16cbad299b2a98a051b621a9d15c42201b/components/viz/service/frame_sinks/direct_layer_tree_frame_sink_unittest.cc

Status: Fixed (was: Started)
Project Member

Comment 9 by bugdroid1@chromium.org, Mar 9 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/91d310c125df1e612442c3324b20a9eaffae15a6

commit 91d310c125df1e612442c3324b20a9eaffae15a6
Author: Ria Jiang <riajiang@chromium.org>
Date: Fri Mar 09 22:27:11 2018

Get the transform from the root target when preparing hit-test data.

When preparing hit-test data for browser and renderer, use the inverse
of render_pass->transform_to_root_target as the transform from the root
target. This transform is identity in most cases but not in very
complicated cases (e.g. https://codepen.io/anon/pen/WMqxrE by weiliangc).

Bug:  806144 
Test: viz_unittests
Cq-Include-Trybots: master.tryserver.chromium.android:android_optional_gpu_tests_rel
Change-Id: I08e46b45a49da1b42ae1c32f6aafaf7a54aabf42
Reviewed-on: https://chromium-review.googlesource.com/951842
Reviewed-by: Robert Kroeger <rjkroege@chromium.org>
Reviewed-by: weiliangc <weiliangc@chromium.org>
Commit-Queue: Ria Jiang <riajiang@chromium.org>
Cr-Commit-Position: refs/heads/master@{#542251}
[modify] https://crrev.com/91d310c125df1e612442c3324b20a9eaffae15a6/components/viz/client/hit_test_data_provider_draw_quad.cc
[modify] https://crrev.com/91d310c125df1e612442c3324b20a9eaffae15a6/components/viz/client/hit_test_data_provider_draw_quad_unittest.cc
[modify] https://crrev.com/91d310c125df1e612442c3324b20a9eaffae15a6/components/viz/service/frame_sinks/direct_layer_tree_frame_sink.cc

Sign in to add a comment