| 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 101 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 112 return WebPointerProperties::PointerType::kPen; | 112 return WebPointerProperties::PointerType::kPen; |
| 113 case MotionEvent::TOOL_TYPE_MOUSE: | 113 case MotionEvent::TOOL_TYPE_MOUSE: |
| 114 return WebPointerProperties::PointerType::kMouse; | 114 return WebPointerProperties::PointerType::kMouse; |
| 115 case MotionEvent::TOOL_TYPE_ERASER: | 115 case MotionEvent::TOOL_TYPE_ERASER: |
| 116 return WebPointerProperties::PointerType::kEraser; | 116 return WebPointerProperties::PointerType::kEraser; |
| 117 } | 117 } |
| 118 NOTREACHED() << "Invalid MotionEvent::ToolType = " << tool_type; | 118 NOTREACHED() << "Invalid MotionEvent::ToolType = " << tool_type; |
| 119 return WebPointerProperties::PointerType::kUnknown; | 119 return WebPointerProperties::PointerType::kUnknown; |
| 120 } | 120 } |
| 121 | 121 |
| 122 WebPointerProperties::PointerType ToWebPointerType( |
| 123 EventPointerType event_pointer_type) { |
| 124 switch (event_pointer_type) { |
| 125 case EventPointerType::POINTER_TYPE_UNKNOWN: |
| 126 return WebPointerProperties::PointerType::kUnknown; |
| 127 case EventPointerType::POINTER_TYPE_MOUSE: |
| 128 return WebPointerProperties::PointerType::kMouse; |
| 129 case EventPointerType::POINTER_TYPE_PEN: |
| 130 return WebPointerProperties::PointerType::kPen; |
| 131 case EventPointerType::POINTER_TYPE_TOUCH: |
| 132 return WebPointerProperties::PointerType::kTouch; |
| 133 case EventPointerType::POINTER_TYPE_ERASER: |
| 134 return WebPointerProperties::PointerType::kEraser; |
| 135 default: |
| 136 NOTREACHED() << "Invalid EventPointerType = " |
| 137 << static_cast<int>(event_pointer_type); |
| 138 return WebPointerProperties::PointerType::kUnknown; |
| 139 } |
| 140 } |
| 141 |
| 122 WebPointerProperties::Button ToWebPointerButton(int android_button_state) { | 142 WebPointerProperties::Button ToWebPointerButton(int android_button_state) { |
| 123 if (android_button_state & MotionEvent::BUTTON_PRIMARY) | 143 if (android_button_state & MotionEvent::BUTTON_PRIMARY) |
| 124 return WebPointerProperties::Button::kLeft; | 144 return WebPointerProperties::Button::kLeft; |
| 125 else if (android_button_state & MotionEvent::BUTTON_SECONDARY) | 145 else if (android_button_state & MotionEvent::BUTTON_SECONDARY) |
| 126 return WebPointerProperties::Button::kRight; | 146 return WebPointerProperties::Button::kRight; |
| 127 else if (android_button_state & MotionEvent::BUTTON_TERTIARY) | 147 else if (android_button_state & MotionEvent::BUTTON_TERTIARY) |
| 128 return WebPointerProperties::Button::kMiddle; | 148 return WebPointerProperties::Button::kMiddle; |
| 129 else if (android_button_state & MotionEvent::BUTTON_BACK) | 149 else if (android_button_state & MotionEvent::BUTTON_BACK) |
| 130 return WebPointerProperties::Button::kBack; | 150 return WebPointerProperties::Button::kBack; |
| 131 else if (android_button_state & MotionEvent::BUTTON_FORWARD) | 151 else if (android_button_state & MotionEvent::BUTTON_FORWARD) |
| (...skipping 362 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 494 DCHECK(IsContinuousGestureEvent(new_event.GetType())); | 514 DCHECK(IsContinuousGestureEvent(new_event.GetType())); |
| 495 DCHECK(IsCompatibleScrollorPinch(new_event, last_event)); | 515 DCHECK(IsCompatibleScrollorPinch(new_event, last_event)); |
| 496 DCHECK(!second_last_event || | 516 DCHECK(!second_last_event || |
| 497 IsCompatibleScrollorPinch(new_event, *second_last_event)); | 517 IsCompatibleScrollorPinch(new_event, *second_last_event)); |
| 498 | 518 |
| 499 WebGestureEvent scroll_event(WebInputEvent::kGestureScrollUpdate, | 519 WebGestureEvent scroll_event(WebInputEvent::kGestureScrollUpdate, |
| 500 new_event.GetModifiers(), | 520 new_event.GetModifiers(), |
| 501 new_event.TimeStampSeconds()); | 521 new_event.TimeStampSeconds()); |
| 502 WebGestureEvent pinch_event; | 522 WebGestureEvent pinch_event; |
| 503 scroll_event.source_device = new_event.source_device; | 523 scroll_event.source_device = new_event.source_device; |
| 524 scroll_event.primary_pointer_type = new_event.primary_pointer_type; |
| 504 pinch_event = scroll_event; | 525 pinch_event = scroll_event; |
| 505 pinch_event.SetType(WebInputEvent::kGesturePinchUpdate); | 526 pinch_event.SetType(WebInputEvent::kGesturePinchUpdate); |
| 506 pinch_event.x = new_event.GetType() == WebInputEvent::kGesturePinchUpdate | 527 pinch_event.x = new_event.GetType() == WebInputEvent::kGesturePinchUpdate |
| 507 ? new_event.x | 528 ? new_event.x |
| 508 : last_event.x; | 529 : last_event.x; |
| 509 pinch_event.y = new_event.GetType() == WebInputEvent::kGesturePinchUpdate | 530 pinch_event.y = new_event.GetType() == WebInputEvent::kGesturePinchUpdate |
| 510 ? new_event.y | 531 ? new_event.y |
| 511 : last_event.y; | 532 : last_event.y; |
| 512 | 533 |
| 513 gfx::Transform combined_scroll_pinch = GetTransformForEvent(last_event); | 534 gfx::Transform combined_scroll_pinch = GetTransformForEvent(last_event); |
| (...skipping 111 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 625 gesture.source_device = blink::kWebGestureDeviceTouchpad; | 646 gesture.source_device = blink::kWebGestureDeviceTouchpad; |
| 626 break; | 647 break; |
| 627 case GestureDeviceType::DEVICE_UNKNOWN: | 648 case GestureDeviceType::DEVICE_UNKNOWN: |
| 628 NOTREACHED() << "Unknown device type is not allowed"; | 649 NOTREACHED() << "Unknown device type is not allowed"; |
| 629 gesture.source_device = blink::kWebGestureDeviceUninitialized; | 650 gesture.source_device = blink::kWebGestureDeviceUninitialized; |
| 630 break; | 651 break; |
| 631 } | 652 } |
| 632 | 653 |
| 633 gesture.is_source_touch_event_set_non_blocking = | 654 gesture.is_source_touch_event_set_non_blocking = |
| 634 details.is_source_touch_event_set_non_blocking(); | 655 details.is_source_touch_event_set_non_blocking(); |
| 635 | 656 gesture.primary_pointer_type = |
| 657 ToWebPointerType(details.primary_pointer_type()); |
| 636 gesture.unique_touch_event_id = unique_touch_event_id; | 658 gesture.unique_touch_event_id = unique_touch_event_id; |
| 637 | 659 |
| 638 switch (details.type()) { | 660 switch (details.type()) { |
| 639 case ET_GESTURE_SHOW_PRESS: | 661 case ET_GESTURE_SHOW_PRESS: |
| 640 gesture.SetType(WebInputEvent::kGestureShowPress); | 662 gesture.SetType(WebInputEvent::kGestureShowPress); |
| 641 gesture.data.show_press.width = details.bounding_box_f().width(); | 663 gesture.data.show_press.width = details.bounding_box_f().width(); |
| 642 gesture.data.show_press.height = details.bounding_box_f().height(); | 664 gesture.data.show_press.height = details.bounding_box_f().height(); |
| 643 break; | 665 break; |
| 644 case ET_GESTURE_DOUBLE_TAP: | 666 case ET_GESTURE_DOUBLE_TAP: |
| 645 gesture.SetType(WebInputEvent::kGestureDoubleTap); | 667 gesture.SetType(WebInputEvent::kGestureDoubleTap); |
| (...skipping 343 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 989 switch (type) { | 1011 switch (type) { |
| 990 case blink::WebGestureEvent::kGestureScrollUpdate: | 1012 case blink::WebGestureEvent::kGestureScrollUpdate: |
| 991 case blink::WebGestureEvent::kGesturePinchUpdate: | 1013 case blink::WebGestureEvent::kGesturePinchUpdate: |
| 992 return true; | 1014 return true; |
| 993 default: | 1015 default: |
| 994 return false; | 1016 return false; |
| 995 } | 1017 } |
| 996 } | 1018 } |
| 997 | 1019 |
| 998 } // namespace ui | 1020 } // namespace ui |
| OLD | NEW |