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

Issue 2036873002: Making EventSender talk to the right WebWidget (for OOPIF support). (Closed)

Created:
4 years, 6 months ago by Łukasz Anforowicz
Modified:
4 years, 2 months ago
CC:
alexmos, chromium-reviews, darin-cc_chromium.org, jam, jochen+watch_chromium.org, mkwst+moarreviews-shell_chromium.org, mlamouri+watch-content_chromium.org, mlamouri+watch-test-runner_chromium.org, Peter Beverloo, 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

Making EventSender talk to the right WebWidget (for OOPIF support). After the CL, there is a separate EventSender instance for each WebWidgetTestProxyBase. Additionally EventSender transforms the coordinates of the event before calling Blink, to make sure the coordinates will work with the target widget. Supporting EventSender via WebWidgetTestProxyBase requires exposing WebWidgetTestProxyBase::web_view_test_proxy_base() accessor and this in turn allows for clean-ups in some other places - for example this allows to remove storing borrowed pointers to TestRunner and WebViewTestProxyBase inside WebWidgetTestClient. BUG=616608 CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:linux_site_isolation Committed: https://crrev.com/d322c5ca6d26e98fcd737cede72c7e1243e7cea5 Cr-Commit-Position: refs/heads/master@{#423762}

Patch Set 1 #

Total comments: 2

Patch Set 2 : Rebasing... #

Patch Set 3 : ... #

Patch Set 4 : DoLayoutIfForceLayoutOnEventsRequested #

Patch Set 5 : Coordinates transformation PLUS EventSender per Web*Widget*TestProxyBase. #

Patch Set 6 : Proper scaling and lifetime management of events. #

Total comments: 4

Patch Set 7 : Getting rid of WebWidgetTestProxyBase::subtype virtual method. #

Patch Set 8 : Made sure things work for keyboard and mouse wheel events. #

Patch Set 9 : Rebasing... #

Total comments: 2

Patch Set 10 : Rebasing... #

Patch Set 11 : Addressed CR feedback from oshima@. #

Total comments: 2

Patch Set 12 : Using blink::WebPoint instead of 2 ints (as suggested by tdresser@). #

Patch Set 13 : Actually, in //ui layer it seems more appropriate to use gfx::Vector2d, rather than blink::WebPoint. #

Patch Set 14 : Rebasing... #

Patch Set 15 : Use RenderWidget::viewRect() [rather than windowRect()] in TransformScreenToWidgetCoordinates. #

Unified diffs Side-by-side diffs Delta from patch set Stats (+332 lines, -119 lines) Patch
M components/test_runner/event_sender.h View 1 2 3 4 5 7 chunks +8 lines, -6 lines 0 comments Download
M components/test_runner/event_sender.cc View 1 2 3 4 5 6 7 8 9 10 23 chunks +76 lines, -57 lines 0 comments Download
M components/test_runner/web_frame_test_client.cc View 1 2 3 4 5 6 7 8 9 3 chunks +5 lines, -2 lines 0 comments Download
M components/test_runner/web_test_delegate.h View 1 2 3 4 5 6 7 4 chunks +19 lines, -2 lines 0 comments Download
M components/test_runner/web_test_interfaces.cc View 1 2 3 4 5 6 7 8 9 1 chunk +1 line, -2 lines 0 comments Download
M components/test_runner/web_view_test_client.cc View 1 2 3 4 5 6 7 8 9 2 chunks +3 lines, -1 line 0 comments Download
M components/test_runner/web_view_test_proxy.h View 1 5 6 3 chunks +0 lines, -4 lines 0 comments Download
M components/test_runner/web_view_test_proxy.cc View 1 2 3 4 5 6 4 chunks +12 lines, -6 lines 0 comments Download
M components/test_runner/web_widget_test_client.h View 1 2 3 4 3 chunks +7 lines, -10 lines 0 comments Download
M components/test_runner/web_widget_test_client.cc View 1 2 3 4 5 chunks +27 lines, -17 lines 0 comments Download
M components/test_runner/web_widget_test_proxy.h View 1 2 3 4 5 6 3 chunks +21 lines, -0 lines 0 comments Download
M components/test_runner/web_widget_test_proxy.cc View 1 2 3 4 5 6 1 chunk +14 lines, -1 line 0 comments Download
M content/public/test/layouttest_support.h View 1 2 3 4 5 6 7 3 chunks +17 lines, -1 line 0 comments Download
M content/shell/renderer/layout_test/blink_test_runner.h View 1 2 3 4 5 1 chunk +5 lines, -0 lines 0 comments Download
M content/shell/renderer/layout_test/blink_test_runner.cc View 1 2 3 4 5 2 chunks +14 lines, -0 lines 0 comments Download
M content/shell/renderer/layout_test/layout_test_content_renderer_client.cc View 1 2 3 4 2 chunks +1 line, -2 lines 0 comments Download
M content/test/BUILD.gn View 1 2 3 4 5 6 7 8 9 10 11 12 13 1 chunk +1 line, -0 lines 0 comments Download
M content/test/layouttest_support.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 4 chunks +73 lines, -3 lines 0 comments Download
M third_party/WebKit/LayoutTests/FlagExpectations/site-per-process View 1 2 3 4 9 1 chunk +0 lines, -4 lines 0 comments Download
M ui/events/blink/blink_event_util.h View 1 2 3 4 5 6 7 8 9 10 11 12 2 chunks +11 lines, -0 lines 0 comments Download
M ui/events/blink/blink_event_util.cc View 1 2 3 4 5 6 7 8 9 10 11 12 5 chunks +17 lines, -1 line 0 comments Download

Messages

Total messages: 75 (50 generated)
Łukasz Anforowicz
https://codereview.chromium.org/2036873002/diff/1/components/test_runner/event_sender.cc File components/test_runner/event_sender.cc (right): https://codereview.chromium.org/2036873002/diff/1/components/test_runner/event_sender.cc#newcode2725 components/test_runner/event_sender.cc:2725: return widget()->handleInputEvent(event); Even after this change http/tests/security/referrer-policy-redirect-link.html keeps timing ...
4 years, 6 months ago (2016-06-02 21:05:19 UTC) #1
Łukasz Anforowicz
Lucas, could you please take an _initial_ look? (_initial_, because this CL doesn't help in ...
4 years, 3 months ago (2016-09-15 20:43:31 UTC) #4
lfg
On 2016/09/15 20:43:31, Łukasz Anforowicz wrote: > Lucas, could you please take an _initial_ look? ...
4 years, 3 months ago (2016-09-15 21:33:52 UTC) #5
Łukasz Anforowicz
On 2016/09/15 21:33:52, lfg wrote: > On 2016/09/15 20:43:31, Łukasz Anforowicz wrote: > > Lucas, ...
4 years, 3 months ago (2016-09-15 22:38:42 UTC) #6
lfg
https://codereview.chromium.org/2036873002/diff/100001/components/test_runner/event_sender.cc File components/test_runner/event_sender.cc (right): https://codereview.chromium.org/2036873002/diff/100001/components/test_runner/event_sender.cc#newcode1355 components/test_runner/event_sender.cc:1355: std::unique_ptr<WebInputEvent> scaled_event = This is doing more than scaling, ...
4 years, 2 months ago (2016-09-29 22:12:52 UTC) #18
Łukasz Anforowicz
Thanks Lucas, What I did in patchset 6 was rather broken (as shown by the ...
4 years, 2 months ago (2016-09-29 23:42:36 UTC) #19
Łukasz Anforowicz
Lucas, I think this CL is now ready for a real review - can you ...
4 years, 2 months ago (2016-09-30 15:29:20 UTC) #24
lfg
Thanks, lgtm!
4 years, 2 months ago (2016-09-30 21:12:12 UTC) #26
Łukasz Anforowicz
oshima@, could you please take a quick look? You've introduced EventSender::ScaleEvent in r402191 - because ...
4 years, 2 months ago (2016-09-30 21:25:04 UTC) #28
oshima
On 2016/09/30 21:25:04, Łukasz Anforowicz wrote: > oshima@, could you please take a quick look? ...
4 years, 2 months ago (2016-10-03 23:34:33 UTC) #33
oshima
lgtm with optional nit https://codereview.chromium.org/2036873002/diff/160001/components/test_runner/event_sender.cc File components/test_runner/event_sender.cc (right): https://codereview.chromium.org/2036873002/diff/160001/components/test_runner/event_sender.cc#newcode2809 components/test_runner/event_sender.cc:2809: if (!WebInputEvent::isKeyboardEventType(popup_friendly_event->type)) nit: looks like ...
4 years, 2 months ago (2016-10-04 17:46:26 UTC) #34
Łukasz Anforowicz
https://codereview.chromium.org/2036873002/diff/160001/components/test_runner/event_sender.cc File components/test_runner/event_sender.cc (right): https://codereview.chromium.org/2036873002/diff/160001/components/test_runner/event_sender.cc#newcode2809 components/test_runner/event_sender.cc:2809: if (!WebInputEvent::isKeyboardEventType(popup_friendly_event->type)) On 2016/10/04 17:46:25, oshima wrote: > nit: ...
4 years, 2 months ago (2016-10-04 21:42:18 UTC) #37
Łukasz Anforowicz
jochen@, could you please take a look?
4 years, 2 months ago (2016-10-04 21:43:18 UTC) #39
jochen (gone - plz use gerrit)
lgtm
4 years, 2 months ago (2016-10-06 11:46:02 UTC) #42
Łukasz Anforowicz
tdresser@ - can you PTAL at: ui/events/blink/blink_event_util.cc ui/events/blink/blink_event_util.h
4 years, 2 months ago (2016-10-06 14:06:33 UTC) #47
tdresser
LGTM https://codereview.chromium.org/2036873002/diff/200001/ui/events/blink/blink_event_util.h File ui/events/blink/blink_event_util.h (right): https://codereview.chromium.org/2036873002/diff/200001/ui/events/blink/blink_event_util.h#newcode57 ui/events/blink/blink_event_util.h:57: int delta_y, Should we pass a Point here ...
4 years, 2 months ago (2016-10-06 14:10:37 UTC) #48
Łukasz Anforowicz
Thanks for the suggestion. https://codereview.chromium.org/2036873002/diff/200001/ui/events/blink/blink_event_util.h File ui/events/blink/blink_event_util.h (right): https://codereview.chromium.org/2036873002/diff/200001/ui/events/blink/blink_event_util.h#newcode57 ui/events/blink/blink_event_util.h:57: int delta_y, On 2016/10/06 14:10:37, ...
4 years, 2 months ago (2016-10-06 18:03:19 UTC) #55
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2036873002/240001
4 years, 2 months ago (2016-10-06 18:35:36 UTC) #60
commit-bot: I haz the power
Try jobs failed on following builders: linux_site_isolation on master.tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/linux_site_isolation/builds/3871)
4 years, 2 months ago (2016-10-06 20:33:22 UTC) #62
Łukasz Anforowicz
Unfortunately, I see that this CL doesn't pass linux_site_isolation tryjobs anymore (it was passing them ...
4 years, 2 months ago (2016-10-06 20:36:57 UTC) #63
Łukasz Anforowicz
bokan@, could you PTAL at the changes I've made (trying to account for your r423030) ...
4 years, 2 months ago (2016-10-06 21:02:49 UTC) #67
bokan
looks right to me. lgtm
4 years, 2 months ago (2016-10-06 22:38:17 UTC) #68
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2036873002/280001
4 years, 2 months ago (2016-10-06 22:43:19 UTC) #72
commit-bot: I haz the power
Committed patchset #15 (id:280001)
4 years, 2 months ago (2016-10-07 00:32:58 UTC) #73
commit-bot: I haz the power
4 years, 2 months ago (2016-10-07 00:35:19 UTC) #75
Message was sent while issue was closed.
Patchset 15 (id:??) landed as
https://crrev.com/d322c5ca6d26e98fcd737cede72c7e1243e7cea5
Cr-Commit-Position: refs/heads/master@{#423762}

Powered by Google App Engine
This is Rietveld 408576698