| OLD | NEW |
| 1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 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 // MSVC++ requires this to be set before any other includes to get M_PI. | 5 // MSVC++ requires this to be set before any other includes to get M_PI. |
| 6 #define _USE_MATH_DEFINES | 6 #define _USE_MATH_DEFINES |
| 7 | 7 |
| 8 #include "ui/events/blink/blink_event_util.h" | 8 #include "ui/events/blink/blink_event_util.h" |
| 9 | 9 |
| 10 #include <stddef.h> | 10 #include <stddef.h> |
| (...skipping 736 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 747 const blink::WebInputEvent& event, | 747 const blink::WebInputEvent& event, |
| 748 const gfx::Vector2d& delta, | 748 const gfx::Vector2d& delta, |
| 749 float scale) { | 749 float scale) { |
| 750 std::unique_ptr<blink::WebInputEvent> scaled_event; | 750 std::unique_ptr<blink::WebInputEvent> scaled_event; |
| 751 if (scale == 1.f && delta.IsZero()) | 751 if (scale == 1.f && delta.IsZero()) |
| 752 return scaled_event; | 752 return scaled_event; |
| 753 if (event.type() == blink::WebMouseEvent::MouseWheel) { | 753 if (event.type() == blink::WebMouseEvent::MouseWheel) { |
| 754 blink::WebMouseWheelEvent* wheel_event = new blink::WebMouseWheelEvent; | 754 blink::WebMouseWheelEvent* wheel_event = new blink::WebMouseWheelEvent; |
| 755 scaled_event.reset(wheel_event); | 755 scaled_event.reset(wheel_event); |
| 756 *wheel_event = static_cast<const blink::WebMouseWheelEvent&>(event); | 756 *wheel_event = static_cast<const blink::WebMouseWheelEvent&>(event); |
| 757 wheel_event->x += delta.x(); | 757 float x = (wheel_event->positionInWidget().x + delta.x()) * scale; |
| 758 wheel_event->y += delta.y(); | 758 float y = (wheel_event->positionInWidget().y + delta.y()) * scale; |
| 759 wheel_event->x *= scale; | 759 wheel_event->setPositionInWidget(x, y); |
| 760 wheel_event->y *= scale; | |
| 761 if (!wheel_event->scrollByPage) { | 760 if (!wheel_event->scrollByPage) { |
| 762 wheel_event->deltaX *= scale; | 761 wheel_event->deltaX *= scale; |
| 763 wheel_event->deltaY *= scale; | 762 wheel_event->deltaY *= scale; |
| 764 wheel_event->wheelTicksX *= scale; | 763 wheel_event->wheelTicksX *= scale; |
| 765 wheel_event->wheelTicksY *= scale; | 764 wheel_event->wheelTicksY *= scale; |
| 766 } | 765 } |
| 767 } else if (blink::WebInputEvent::isMouseEventType(event.type())) { | 766 } else if (blink::WebInputEvent::isMouseEventType(event.type())) { |
| 768 blink::WebMouseEvent* mouse_event = new blink::WebMouseEvent; | 767 blink::WebMouseEvent* mouse_event = new blink::WebMouseEvent; |
| 769 scaled_event.reset(mouse_event); | 768 scaled_event.reset(mouse_event); |
| 770 *mouse_event = static_cast<const blink::WebMouseEvent&>(event); | 769 *mouse_event = static_cast<const blink::WebMouseEvent&>(event); |
| 771 mouse_event->x += delta.x(); | 770 float x = (mouse_event->positionInWidget().x + delta.x()) * scale; |
| 772 mouse_event->y += delta.y(); | 771 float y = (mouse_event->positionInWidget().y + delta.y()) * scale; |
| 773 mouse_event->x *= scale; | 772 mouse_event->setPositionInWidget(x, y); |
| 774 mouse_event->y *= scale; | |
| 775 mouse_event->movementX *= scale; | 773 mouse_event->movementX *= scale; |
| 776 mouse_event->movementY *= scale; | 774 mouse_event->movementY *= scale; |
| 777 } else if (blink::WebInputEvent::isTouchEventType(event.type())) { | 775 } else if (blink::WebInputEvent::isTouchEventType(event.type())) { |
| 778 blink::WebTouchEvent* touch_event = new blink::WebTouchEvent; | 776 blink::WebTouchEvent* touch_event = new blink::WebTouchEvent; |
| 779 scaled_event.reset(touch_event); | 777 scaled_event.reset(touch_event); |
| 780 *touch_event = static_cast<const blink::WebTouchEvent&>(event); | 778 *touch_event = static_cast<const blink::WebTouchEvent&>(event); |
| 781 for (unsigned i = 0; i < touch_event->touchesLength; i++) { | 779 for (unsigned i = 0; i < touch_event->touchesLength; i++) { |
| 782 touch_event->touches[i].position.x += delta.x(); | 780 touch_event->touches[i].position.x += delta.x(); |
| 783 touch_event->touches[i].position.y += delta.y(); | 781 touch_event->touches[i].position.y += delta.y(); |
| 784 touch_event->touches[i].position.x *= scale; | 782 touch_event->touches[i].position.x *= scale; |
| (...skipping 195 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 980 switch (type) { | 978 switch (type) { |
| 981 case blink::WebGestureEvent::GestureScrollUpdate: | 979 case blink::WebGestureEvent::GestureScrollUpdate: |
| 982 case blink::WebGestureEvent::GesturePinchUpdate: | 980 case blink::WebGestureEvent::GesturePinchUpdate: |
| 983 return true; | 981 return true; |
| 984 default: | 982 default: |
| 985 return false; | 983 return false; |
| 986 } | 984 } |
| 987 } | 985 } |
| 988 | 986 |
| 989 } // namespace ui | 987 } // namespace ui |
| OLD | NEW |