OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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 "ui/events/event.h" | 5 #include "ui/events/event.h" |
6 | 6 |
7 #include <utility> | 7 #include <utility> |
8 | 8 |
9 #if defined(USE_X11) | 9 #if defined(USE_X11) |
10 #include <X11/extensions/XInput2.h> | 10 #include <X11/extensions/XInput2.h> |
(...skipping 703 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
714 void TouchEvent::FixRotationAngle() { | 714 void TouchEvent::FixRotationAngle() { |
715 while (rotation_angle_ < 0) | 715 while (rotation_angle_ < 0) |
716 rotation_angle_ += 180; | 716 rotation_angle_ += 180; |
717 while (rotation_angle_ >= 180) | 717 while (rotation_angle_ >= 180) |
718 rotation_angle_ -= 180; | 718 rotation_angle_ -= 180; |
719 } | 719 } |
720 | 720 |
721 //////////////////////////////////////////////////////////////////////////////// | 721 //////////////////////////////////////////////////////////////////////////////// |
722 // PointerEvent | 722 // PointerEvent |
723 | 723 |
| 724 bool PointerEvent::CanConvertFrom(const Event& event) { |
| 725 switch (event.type()) { |
| 726 case ET_MOUSE_PRESSED: |
| 727 case ET_MOUSE_DRAGGED: |
| 728 case ET_MOUSE_MOVED: |
| 729 case ET_MOUSE_ENTERED: |
| 730 case ET_MOUSE_EXITED: |
| 731 case ET_MOUSE_RELEASED: |
| 732 case ET_TOUCH_PRESSED: |
| 733 case ET_TOUCH_MOVED: |
| 734 case ET_TOUCH_RELEASED: |
| 735 case ET_TOUCH_CANCELLED: |
| 736 return true; |
| 737 default: |
| 738 return false; |
| 739 } |
| 740 } |
| 741 |
724 PointerEvent::PointerEvent(const PointerEvent& pointer_event) | 742 PointerEvent::PointerEvent(const PointerEvent& pointer_event) |
725 : LocatedEvent(pointer_event), | 743 : LocatedEvent(pointer_event), |
726 pointer_id_(pointer_event.pointer_id()), | 744 pointer_id_(pointer_event.pointer_id()), |
727 details_(pointer_event.pointer_details()) {} | 745 details_(pointer_event.pointer_details()) {} |
728 | 746 |
729 PointerEvent::PointerEvent(const MouseEvent& mouse_event) | 747 PointerEvent::PointerEvent(const MouseEvent& mouse_event) |
730 : LocatedEvent(mouse_event), | 748 : LocatedEvent(mouse_event), |
731 pointer_id_(kMousePointerId), | 749 pointer_id_(kMousePointerId), |
732 details_(mouse_event.pointer_details()) { | 750 details_(mouse_event.pointer_details()) { |
| 751 DCHECK(CanConvertFrom(mouse_event)); |
733 switch (mouse_event.type()) { | 752 switch (mouse_event.type()) { |
734 case ET_MOUSE_PRESSED: | 753 case ET_MOUSE_PRESSED: |
735 SetType(ET_POINTER_DOWN); | 754 SetType(ET_POINTER_DOWN); |
736 break; | 755 break; |
737 | 756 |
738 case ET_MOUSE_DRAGGED: | 757 case ET_MOUSE_DRAGGED: |
739 case ET_MOUSE_MOVED: | 758 case ET_MOUSE_MOVED: |
740 SetType(ET_POINTER_MOVED); | 759 SetType(ET_POINTER_MOVED); |
741 break; | 760 break; |
742 | 761 |
(...skipping 11 matching lines...) Expand all Loading... |
754 | 773 |
755 default: | 774 default: |
756 NOTREACHED(); | 775 NOTREACHED(); |
757 } | 776 } |
758 } | 777 } |
759 | 778 |
760 PointerEvent::PointerEvent(const TouchEvent& touch_event) | 779 PointerEvent::PointerEvent(const TouchEvent& touch_event) |
761 : LocatedEvent(touch_event), | 780 : LocatedEvent(touch_event), |
762 pointer_id_(touch_event.touch_id()), | 781 pointer_id_(touch_event.touch_id()), |
763 details_(touch_event.pointer_details()) { | 782 details_(touch_event.pointer_details()) { |
| 783 DCHECK(CanConvertFrom(touch_event)); |
764 switch (touch_event.type()) { | 784 switch (touch_event.type()) { |
765 case ET_TOUCH_PRESSED: | 785 case ET_TOUCH_PRESSED: |
766 SetType(ET_POINTER_DOWN); | 786 SetType(ET_POINTER_DOWN); |
767 break; | 787 break; |
768 | 788 |
769 case ET_TOUCH_MOVED: | 789 case ET_TOUCH_MOVED: |
770 SetType(ET_POINTER_MOVED); | 790 SetType(ET_POINTER_MOVED); |
771 break; | 791 break; |
772 | 792 |
773 case ET_TOUCH_RELEASED: | 793 case ET_TOUCH_RELEASED: |
(...skipping 373 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1147 gfx::PointF(x, y), | 1167 gfx::PointF(x, y), |
1148 time_stamp, | 1168 time_stamp, |
1149 flags | EF_FROM_TOUCH), | 1169 flags | EF_FROM_TOUCH), |
1150 details_(details) { | 1170 details_(details) { |
1151 } | 1171 } |
1152 | 1172 |
1153 GestureEvent::~GestureEvent() { | 1173 GestureEvent::~GestureEvent() { |
1154 } | 1174 } |
1155 | 1175 |
1156 } // namespace ui | 1176 } // namespace ui |
OLD | NEW |