OLD | NEW |
1 // Copyright 2017 The Chromium Authors. All rights reserved. | 1 // Copyright 2017 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "content/browser/pointer_lock_browsertest.h" | 5 #include "content/browser/pointer_lock_browsertest.h" |
6 | 6 |
7 #include "content/browser/frame_host/frame_tree.h" | 7 #include "content/browser/frame_host/frame_tree.h" |
8 #include "content/browser/renderer_host/render_widget_host_impl.h" | 8 #include "content/browser/renderer_host/render_widget_host_impl.h" |
9 #include "content/browser/renderer_host/render_widget_host_input_event_router.h" | 9 #include "content/browser/renderer_host/render_widget_host_input_event_router.h" |
10 #include "content/browser/web_contents/web_contents_impl.h" | 10 #include "content/browser/web_contents/web_contents_impl.h" |
(...skipping 180 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
191 | 191 |
192 // Add a mouse move event listener to the root frame. | 192 // Add a mouse move event listener to the root frame. |
193 EXPECT_TRUE(ExecuteScript( | 193 EXPECT_TRUE(ExecuteScript( |
194 root, | 194 root, |
195 "var x; var y; var mX; var mY; document.addEventListener('mousemove', " | 195 "var x; var y; var mX; var mY; document.addEventListener('mousemove', " |
196 "function(e) {x = e.x; y = e.y; mX = e.movementX; mY = e.movementY;});")); | 196 "function(e) {x = e.x; y = e.y; mX = e.movementX; mY = e.movementY;});")); |
197 | 197 |
198 blink::WebMouseEvent mouse_event(blink::WebInputEvent::MouseMove, | 198 blink::WebMouseEvent mouse_event(blink::WebInputEvent::MouseMove, |
199 blink::WebInputEvent::NoModifiers, | 199 blink::WebInputEvent::NoModifiers, |
200 blink::WebInputEvent::TimeStampForTesting); | 200 blink::WebInputEvent::TimeStampForTesting); |
201 mouse_event.x = 10; | 201 mouse_event.position.x = 10; |
202 mouse_event.y = 11; | 202 mouse_event.position.y = 11; |
203 mouse_event.movementX = 12; | 203 mouse_event.movementX = 12; |
204 mouse_event.movementY = 13; | 204 mouse_event.movementY = 13; |
205 router->RouteMouseEvent(root_view, &mouse_event, ui::LatencyInfo()); | 205 router->RouteMouseEvent(root_view, &mouse_event, ui::LatencyInfo()); |
206 | 206 |
207 // Make sure that the renderer handled the input event. | 207 // Make sure that the renderer handled the input event. |
208 MainThreadFrameObserver root_observer(root_view->GetRenderWidgetHost()); | 208 MainThreadFrameObserver root_observer(root_view->GetRenderWidgetHost()); |
209 root_observer.Wait(); | 209 root_observer.Wait(); |
210 | 210 |
211 int x, y, movementX, movementY; | 211 int x, y, movementX, movementY; |
212 EXPECT_TRUE(ExecuteScriptAndExtractInt( | 212 EXPECT_TRUE(ExecuteScriptAndExtractInt( |
(...skipping 26 matching lines...) Expand all Loading... |
239 // Add a mouse move event listener to the child frame. | 239 // Add a mouse move event listener to the child frame. |
240 EXPECT_TRUE(ExecuteScript( | 240 EXPECT_TRUE(ExecuteScript( |
241 child, | 241 child, |
242 "var x; var y; var mX; var mY; document.addEventListener('mousemove', " | 242 "var x; var y; var mX; var mY; document.addEventListener('mousemove', " |
243 "function(e) {x = e.x; y = e.y; mX = e.movementX; mY = e.movementY;});")); | 243 "function(e) {x = e.x; y = e.y; mX = e.movementX; mY = e.movementY;});")); |
244 | 244 |
245 gfx::Point transformed_point; | 245 gfx::Point transformed_point; |
246 root_view->TransformPointToCoordSpaceForView(gfx::Point(0, 0), child_view, | 246 root_view->TransformPointToCoordSpaceForView(gfx::Point(0, 0), child_view, |
247 &transformed_point); | 247 &transformed_point); |
248 | 248 |
249 mouse_event.x = -transformed_point.x() + 14; | 249 mouse_event.position.x = -transformed_point.x() + 14; |
250 mouse_event.y = -transformed_point.y() + 15; | 250 mouse_event.position.y = -transformed_point.y() + 15; |
251 mouse_event.movementX = 16; | 251 mouse_event.movementX = 16; |
252 mouse_event.movementY = 17; | 252 mouse_event.movementY = 17; |
253 // We use root_view intentionally as the RenderWidgetHostInputEventRouter is | 253 // We use root_view intentionally as the RenderWidgetHostInputEventRouter is |
254 // responsible for correctly routing the event to the child frame. | 254 // responsible for correctly routing the event to the child frame. |
255 router->RouteMouseEvent(root_view, &mouse_event, ui::LatencyInfo()); | 255 router->RouteMouseEvent(root_view, &mouse_event, ui::LatencyInfo()); |
256 | 256 |
257 // Make sure that the renderer handled the input event. | 257 // Make sure that the renderer handled the input event. |
258 MainThreadFrameObserver child_observer(child_view->GetRenderWidgetHost()); | 258 MainThreadFrameObserver child_observer(child_view->GetRenderWidgetHost()); |
259 child_observer.Wait(); | 259 child_observer.Wait(); |
260 | 260 |
(...skipping 76 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
337 EXPECT_TRUE(ExecuteScript( | 337 EXPECT_TRUE(ExecuteScript( |
338 root, | 338 root, |
339 "var x; var y; var mX; var mY; document.addEventListener('mousewheel', " | 339 "var x; var y; var mX; var mY; document.addEventListener('mousewheel', " |
340 "function(e) {x = e.x; y = e.y; dX = e.deltaX; dY = e.deltaY;});")); | 340 "function(e) {x = e.x; y = e.y; dX = e.deltaX; dY = e.deltaY;});")); |
341 MainThreadFrameObserver root_observer(root_view->GetRenderWidgetHost()); | 341 MainThreadFrameObserver root_observer(root_view->GetRenderWidgetHost()); |
342 root_observer.Wait(); | 342 root_observer.Wait(); |
343 | 343 |
344 blink::WebMouseWheelEvent wheel_event( | 344 blink::WebMouseWheelEvent wheel_event( |
345 blink::WebInputEvent::MouseWheel, blink::WebInputEvent::NoModifiers, | 345 blink::WebInputEvent::MouseWheel, blink::WebInputEvent::NoModifiers, |
346 blink::WebInputEvent::TimeStampForTesting); | 346 blink::WebInputEvent::TimeStampForTesting); |
347 wheel_event.x = 10; | 347 wheel_event.position.x = 10; |
348 wheel_event.y = 11; | 348 wheel_event.position.y = 11; |
349 wheel_event.deltaX = -12; | 349 wheel_event.deltaX = -12; |
350 wheel_event.deltaY = -13; | 350 wheel_event.deltaY = -13; |
351 router->RouteMouseWheelEvent(root_view, &wheel_event, ui::LatencyInfo()); | 351 router->RouteMouseWheelEvent(root_view, &wheel_event, ui::LatencyInfo()); |
352 | 352 |
353 // Make sure that the renderer handled the input event. | 353 // Make sure that the renderer handled the input event. |
354 root_observer.Wait(); | 354 root_observer.Wait(); |
355 | 355 |
356 int x, y, deltaX, deltaY; | 356 int x, y, deltaX, deltaY; |
357 EXPECT_TRUE(ExecuteScriptAndExtractInt( | 357 EXPECT_TRUE(ExecuteScriptAndExtractInt( |
358 root, "window.domAutomationController.send(x);", &x)); | 358 root, "window.domAutomationController.send(x);", &x)); |
(...skipping 27 matching lines...) Expand all Loading... |
386 child, | 386 child, |
387 "var x; var y; var mX; var mY; document.addEventListener('mousewheel', " | 387 "var x; var y; var mX; var mY; document.addEventListener('mousewheel', " |
388 "function(e) {x = e.x; y = e.y; dX = e.deltaX; dY = e.deltaY;});")); | 388 "function(e) {x = e.x; y = e.y; dX = e.deltaX; dY = e.deltaY;});")); |
389 MainThreadFrameObserver child_observer(child_view->GetRenderWidgetHost()); | 389 MainThreadFrameObserver child_observer(child_view->GetRenderWidgetHost()); |
390 child_observer.Wait(); | 390 child_observer.Wait(); |
391 | 391 |
392 gfx::Point transformed_point; | 392 gfx::Point transformed_point; |
393 root_view->TransformPointToCoordSpaceForView(gfx::Point(0, 0), child_view, | 393 root_view->TransformPointToCoordSpaceForView(gfx::Point(0, 0), child_view, |
394 &transformed_point); | 394 &transformed_point); |
395 | 395 |
396 wheel_event.x = -transformed_point.x() + 14; | 396 wheel_event.position.x = -transformed_point.x() + 14; |
397 wheel_event.y = -transformed_point.y() + 15; | 397 wheel_event.position.y = -transformed_point.y() + 15; |
398 wheel_event.deltaX = -16; | 398 wheel_event.deltaX = -16; |
399 wheel_event.deltaY = -17; | 399 wheel_event.deltaY = -17; |
400 // We use root_view intentionally as the RenderWidgetHostInputEventRouter is | 400 // We use root_view intentionally as the RenderWidgetHostInputEventRouter is |
401 // responsible for correctly routing the event to the child frame. | 401 // responsible for correctly routing the event to the child frame. |
402 router->RouteMouseWheelEvent(root_view, &wheel_event, ui::LatencyInfo()); | 402 router->RouteMouseWheelEvent(root_view, &wheel_event, ui::LatencyInfo()); |
403 | 403 |
404 // Make sure that the renderer handled the input event. | 404 // Make sure that the renderer handled the input event. |
405 child_observer.Wait(); | 405 child_observer.Wait(); |
406 | 406 |
407 EXPECT_TRUE(ExecuteScriptAndExtractInt( | 407 EXPECT_TRUE(ExecuteScriptAndExtractInt( |
408 child, "window.domAutomationController.send(x);", &x)); | 408 child, "window.domAutomationController.send(x);", &x)); |
409 EXPECT_TRUE(ExecuteScriptAndExtractInt( | 409 EXPECT_TRUE(ExecuteScriptAndExtractInt( |
410 child, "window.domAutomationController.send(y);", &y)); | 410 child, "window.domAutomationController.send(y);", &y)); |
411 EXPECT_TRUE(ExecuteScriptAndExtractInt( | 411 EXPECT_TRUE(ExecuteScriptAndExtractInt( |
412 child, "window.domAutomationController.send(dX);", &deltaX)); | 412 child, "window.domAutomationController.send(dX);", &deltaX)); |
413 EXPECT_TRUE(ExecuteScriptAndExtractInt( | 413 EXPECT_TRUE(ExecuteScriptAndExtractInt( |
414 child, "window.domAutomationController.send(dY);", &deltaY)); | 414 child, "window.domAutomationController.send(dY);", &deltaY)); |
415 EXPECT_EQ(14, x); | 415 EXPECT_EQ(14, x); |
416 EXPECT_EQ(15, y); | 416 EXPECT_EQ(15, y); |
417 EXPECT_EQ(16, deltaX); | 417 EXPECT_EQ(16, deltaX); |
418 EXPECT_EQ(17, deltaY); | 418 EXPECT_EQ(17, deltaY); |
419 } | 419 } |
420 | 420 |
421 } // namespace content | 421 } // namespace content |
OLD | NEW |