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

Side by Side Diff: third_party/WebKit/Source/web/tests/WebPluginContainerTest.cpp

Issue 2782893002: WebMouseEvent coordinates are now fractional & private (Closed)
Patch Set: Rebased, fixed a comment in web_input_event_builders_mac.mm Created 3 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2012 Google Inc. All rights reserved. 2 * Copyright (C) 2012 Google Inc. All rights reserved.
3 * 3 *
4 * Redistribution and use in source and binary forms, with or without 4 * Redistribution and use in source and binary forms, with or without
5 * modification, are permitted provided that the following conditions are 5 * modification, are permitted provided that the following conditions are
6 * met: 6 * met:
7 * 7 *
8 * * Redistributions of source code must retain the above copyright 8 * * Redistributions of source code must retain the above copyright
9 * notice, this list of conditions and the following disclaimer. 9 * notice, this list of conditions and the following disclaimer.
10 * * Redistributions in binary form must reproduce the above 10 * * Redistributions in binary form must reproduce the above
(...skipping 430 matching lines...) Expand 10 before | Expand all | Expand 10 after
441 : FakeWebPlugin(frame, params), 441 : FakeWebPlugin(frame, params),
442 m_lastEventType(WebInputEvent::Undefined) {} 442 m_lastEventType(WebInputEvent::Undefined) {}
443 443
444 WebInputEventResult handleInputEvent(const WebInputEvent& event, 444 WebInputEventResult handleInputEvent(const WebInputEvent& event,
445 WebCursorInfo&) override { 445 WebCursorInfo&) override {
446 m_lastEventType = event.type(); 446 m_lastEventType = event.type();
447 if (WebInputEvent::isMouseEventType(event.type()) || 447 if (WebInputEvent::isMouseEventType(event.type()) ||
448 event.type() == WebInputEvent::MouseWheel) { 448 event.type() == WebInputEvent::MouseWheel) {
449 const WebMouseEvent& mouseEvent = 449 const WebMouseEvent& mouseEvent =
450 static_cast<const WebMouseEvent&>(event); 450 static_cast<const WebMouseEvent&>(event);
451 m_lastMouseEventLocation = IntPoint(mouseEvent.x, mouseEvent.y); 451 m_lastMouseEventLocation = IntPoint(mouseEvent.positionInWidget().x,
452 mouseEvent.positionInWidget().y);
452 } 453 }
453 454
454 return WebInputEventResult::HandledSystem; 455 return WebInputEventResult::HandledSystem;
455 } 456 }
456 WebInputEvent::Type getLastInputEventType() { return m_lastEventType; } 457 WebInputEvent::Type getLastInputEventType() { return m_lastEventType; }
457 458
458 IntPoint getLastMouseEventLocation() { return m_lastMouseEventLocation; } 459 IntPoint getLastMouseEventLocation() { return m_lastMouseEventLocation; }
459 460
460 private: 461 private:
461 WebInputEvent::Type m_lastEventType; 462 WebInputEvent::Type m_lastEventType;
(...skipping 68 matching lines...) Expand 10 before | Expand all | Expand 10 after
530 WebPlugin* plugin = static_cast<WebPluginContainerImpl*>( 531 WebPlugin* plugin = static_cast<WebPluginContainerImpl*>(
531 pluginContainerOneElement.pluginContainer()) 532 pluginContainerOneElement.pluginContainer())
532 ->plugin(); 533 ->plugin();
533 EventTestPlugin* testPlugin = static_cast<EventTestPlugin*>(plugin); 534 EventTestPlugin* testPlugin = static_cast<EventTestPlugin*>(plugin);
534 535
535 WebMouseWheelEvent event(WebInputEvent::MouseWheel, 536 WebMouseWheelEvent event(WebInputEvent::MouseWheel,
536 WebInputEvent::NoModifiers, 537 WebInputEvent::NoModifiers,
537 WebInputEvent::TimeStampForTesting); 538 WebInputEvent::TimeStampForTesting);
538 539
539 WebRect rect = pluginContainerOneElement.boundsInViewport(); 540 WebRect rect = pluginContainerOneElement.boundsInViewport();
540 event.x = rect.x + rect.width / 2; 541 event.setPositionInWidget(rect.x + rect.width / 2, rect.y + rect.height / 2);
541 event.y = rect.y + rect.height / 2;
542 542
543 webView->handleInputEvent(WebCoalescedInputEvent(event)); 543 webView->handleInputEvent(WebCoalescedInputEvent(event));
544 runPendingTasks(); 544 runPendingTasks();
545 545
546 EXPECT_EQ(WebInputEvent::MouseWheel, testPlugin->getLastInputEventType()); 546 EXPECT_EQ(WebInputEvent::MouseWheel, testPlugin->getLastInputEventType());
547 EXPECT_EQ(rect.width / 2, testPlugin->getLastMouseEventLocation().x()); 547 EXPECT_EQ(rect.width / 2, testPlugin->getLastMouseEventLocation().x());
548 EXPECT_EQ(rect.height / 2, testPlugin->getLastMouseEventLocation().y()); 548 EXPECT_EQ(rect.height / 2, testPlugin->getLastMouseEventLocation().y());
549 } 549 }
550 550
551 // Verify that isRectTopmost returns false when the document is detached. 551 // Verify that isRectTopmost returns false when the document is detached.
(...skipping 231 matching lines...) Expand 10 before | Expand all | Expand 10 after
783 webView->mainFrame()->document().getElementById( 783 webView->mainFrame()->document().getElementById(
784 WebString::fromUTF8("translated-plugin")); 784 WebString::fromUTF8("translated-plugin"));
785 pluginContainerOneElement.pluginContainer()->setWantsWheelEvents(true); 785 pluginContainerOneElement.pluginContainer()->setWantsWheelEvents(true);
786 786
787 runPendingTasks(); 787 runPendingTasks();
788 EXPECT_TRUE(webView->page()->eventHandlerRegistry().hasEventHandlers( 788 EXPECT_TRUE(webView->page()->eventHandlerRegistry().hasEventHandlers(
789 EventHandlerRegistry::WheelEventBlocking)); 789 EventHandlerRegistry::WheelEventBlocking));
790 } 790 }
791 791
792 } // namespace blink 792 } // namespace blink
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698