Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(232)

Issue 1734403003: Add helper class for tests using browser process hit testing (Closed)

Created:
4 years, 9 months ago by kenrb
Modified:
4 years, 9 months ago
Reviewers:
nasko
CC:
chromium-reviews, creis+watch_chromium.org, yusukes+watch_chromium.org, shuchen+watch_chromium.org, nasko+codewatch_chromium.org, jam, sievers+watch_chromium.org, jbauman+watch_chromium.org, nona+watch_chromium.org, darin-cc_chromium.org, kalyank, piman+watch_chromium.org, danakj+watch_chromium.org, James Su, site-isolation-reviews_chromium.org
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Add helper class for tests using browser process hit testing Tests that rely on browser process hit testing are challenging to write because hit testing will not work until a compositor frame has been received from an out-of-process iframe's renderer, and a subsequent compositor frame is received from its parent renderer that contains the SurfaceId used by the OOPIF. In trying to write a test that hit tests through nested OOPIFs, trying to reason it out just based on compositor frame swap events becomes the kind of concurrency problem that you studied in school and thought, "Thankfully there are primitives to handle this sort of thing so I won't have to remember any of this after the exam." This CL adds a helper class that handles the problem by reaching into the compositor's Surface code and signalling when a desired Surface is available for hit testing. BUG=589572 CQ_INCLUDE_TRYBOTS=tryserver.chromium.linux:linux_site_isolation Committed: https://crrev.com/e975655cd86a5d47b0cfdb5c82039bcb5a561665 Cr-Commit-Position: refs/heads/master@{#378044}

Patch Set 1 #

Total comments: 10

Patch Set 2 : Rebase only #

Patch Set 3 : Review comments addressed + refactor for Mac #

Patch Set 4 : Fix gcc compile warnings #

Unified diffs Side-by-side diffs Delta from patch set Stats (+121 lines, -50 lines) Patch
M content/browser/compositor/surface_utils.h View 2 chunks +2 lines, -0 lines 0 comments Download
M content/browser/frame_host/cross_process_frame_connector.h View 1 chunk +5 lines, -0 lines 0 comments Download
M content/browser/frame_host/render_widget_host_view_child_frame.h View 1 2 3 1 chunk +6 lines, -0 lines 0 comments Download
M content/browser/frame_host/render_widget_host_view_child_frame.cc View 1 2 3 1 chunk +4 lines, -0 lines 0 comments Download
M content/browser/renderer_host/render_widget_host_view_aura.h View 1 2 1 chunk +3 lines, -0 lines 0 comments Download
M content/browser/renderer_host/render_widget_host_view_aura.cc View 1 2 1 chunk +4 lines, -0 lines 0 comments Download
M content/browser/renderer_host/render_widget_host_view_base.h View 1 2 2 chunks +4 lines, -0 lines 0 comments Download
M content/browser/renderer_host/render_widget_host_view_base.cc View 1 2 1 chunk +4 lines, -0 lines 0 comments Download
M content/browser/renderer_host/render_widget_host_view_mac.h View 1 2 2 chunks +4 lines, -0 lines 0 comments Download
M content/browser/renderer_host/render_widget_host_view_mac.mm View 1 2 1 chunk +4 lines, -0 lines 0 comments Download
M content/browser/site_per_process_browsertest.cc View 1 2 3 chunks +6 lines, -50 lines 0 comments Download
M content/test/content_browser_test_utils_internal.h View 1 2 2 chunks +27 lines, -0 lines 0 comments Download
M content/test/content_browser_test_utils_internal.cc View 1 2 2 chunks +48 lines, -0 lines 0 comments Download

Messages

Total messages: 12 (6 generated)
nasko
LGTM with some nits. https://codereview.chromium.org/1734403003/diff/1/content/browser/site_per_process_browsertest.cc File content/browser/site_per_process_browsertest.cc (right): https://codereview.chromium.org/1734403003/diff/1/content/browser/site_per_process_browsertest.cc#newcode177 content/browser/site_per_process_browsertest.cc:177: class SurfaceHitTestReadyNotifier { nit: Shouldn't ...
4 years, 9 months ago (2016-02-26 18:33:51 UTC) #4
kenrb
nasko: Would you mind taking another look? I had to make some significant changes for ...
4 years, 9 months ago (2016-02-26 21:33:19 UTC) #5
nasko
Still LGTM
4 years, 9 months ago (2016-02-26 22:11:28 UTC) #6
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1734403003/60001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1734403003/60001
4 years, 9 months ago (2016-02-26 22:41:46 UTC) #8
commit-bot: I haz the power
Committed patchset #4 (id:60001)
4 years, 9 months ago (2016-02-27 00:53:58 UTC) #10
commit-bot: I haz the power
4 years, 9 months ago (2016-02-27 00:56:37 UTC) #12
Message was sent while issue was closed.
Patchset 4 (id:??) landed as
https://crrev.com/e975655cd86a5d47b0cfdb5c82039bcb5a561665
Cr-Commit-Position: refs/heads/master@{#378044}

Powered by Google App Engine
This is Rietveld 408576698