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 137 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
148 if (event.IsTouchEvent()) { | 148 if (event.IsTouchEvent()) { |
149 return make_scoped_ptr( | 149 return make_scoped_ptr( |
150 new TouchEvent(static_cast<const TouchEvent&>(event))); | 150 new TouchEvent(static_cast<const TouchEvent&>(event))); |
151 } | 151 } |
152 | 152 |
153 if (event.IsGestureEvent()) { | 153 if (event.IsGestureEvent()) { |
154 return make_scoped_ptr( | 154 return make_scoped_ptr( |
155 new GestureEvent(static_cast<const GestureEvent&>(event))); | 155 new GestureEvent(static_cast<const GestureEvent&>(event))); |
156 } | 156 } |
157 | 157 |
| 158 if (event.IsPointerEvent()) { |
| 159 return make_scoped_ptr( |
| 160 new PointerEvent(static_cast<const PointerEvent&>(event))); |
| 161 } |
| 162 |
158 if (event.IsScrollEvent()) { | 163 if (event.IsScrollEvent()) { |
159 return make_scoped_ptr( | 164 return make_scoped_ptr( |
160 new ScrollEvent(static_cast<const ScrollEvent&>(event))); | 165 new ScrollEvent(static_cast<const ScrollEvent&>(event))); |
161 } | 166 } |
162 | 167 |
163 return make_scoped_ptr(new Event(event)); | 168 return make_scoped_ptr(new Event(event)); |
164 } | 169 } |
165 | 170 |
166 Event::~Event() { | 171 Event::~Event() { |
167 if (delete_native_event_) | 172 if (delete_native_event_) |
168 ReleaseCopiedNativeEvent(native_event_); | 173 ReleaseCopiedNativeEvent(native_event_); |
169 } | 174 } |
170 | 175 |
171 GestureEvent* Event::AsGestureEvent() { | 176 GestureEvent* Event::AsGestureEvent() { |
172 CHECK(IsGestureEvent()); | 177 CHECK(IsGestureEvent()); |
173 return static_cast<GestureEvent*>(this); | 178 return static_cast<GestureEvent*>(this); |
174 } | 179 } |
175 | 180 |
176 const GestureEvent* Event::AsGestureEvent() const { | 181 const GestureEvent* Event::AsGestureEvent() const { |
177 CHECK(IsGestureEvent()); | 182 CHECK(IsGestureEvent()); |
178 return static_cast<const GestureEvent*>(this); | 183 return static_cast<const GestureEvent*>(this); |
179 } | 184 } |
180 | 185 |
| 186 PointerEvent* Event::AsPointerEvent() { |
| 187 CHECK(IsPointerEvent()); |
| 188 return static_cast<PointerEvent*>(this); |
| 189 } |
| 190 |
| 191 const PointerEvent* Event::AsPointerEvent() const { |
| 192 CHECK(IsPointerEvent()); |
| 193 return static_cast<const PointerEvent*>(this); |
| 194 } |
| 195 |
181 bool Event::HasNativeEvent() const { | 196 bool Event::HasNativeEvent() const { |
182 base::NativeEvent null_event; | 197 base::NativeEvent null_event; |
183 std::memset(&null_event, 0, sizeof(null_event)); | 198 std::memset(&null_event, 0, sizeof(null_event)); |
184 return !!std::memcmp(&native_event_, &null_event, sizeof(null_event)); | 199 return !!std::memcmp(&native_event_, &null_event, sizeof(null_event)); |
185 } | 200 } |
186 | 201 |
187 void Event::StopPropagation() { | 202 void Event::StopPropagation() { |
188 // TODO(sad): Re-enable these checks once View uses dispatcher to dispatch | 203 // TODO(sad): Re-enable these checks once View uses dispatcher to dispatch |
189 // events. | 204 // events. |
190 // CHECK(phase_ != EP_PREDISPATCH && phase_ != EP_POSTDISPATCH); | 205 // CHECK(phase_ != EP_PREDISPATCH && phase_ != EP_POSTDISPATCH); |
(...skipping 446 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
637 void TouchEvent::FixRotationAngle() { | 652 void TouchEvent::FixRotationAngle() { |
638 while (rotation_angle_ < 0) | 653 while (rotation_angle_ < 0) |
639 rotation_angle_ += 180; | 654 rotation_angle_ += 180; |
640 while (rotation_angle_ >= 180) | 655 while (rotation_angle_ >= 180) |
641 rotation_angle_ -= 180; | 656 rotation_angle_ -= 180; |
642 } | 657 } |
643 | 658 |
644 //////////////////////////////////////////////////////////////////////////////// | 659 //////////////////////////////////////////////////////////////////////////////// |
645 // PointerEvent | 660 // PointerEvent |
646 | 661 |
| 662 PointerEvent::PointerEvent(const PointerEvent& pointer_event) |
| 663 : LocatedEvent(pointer_event), |
| 664 pointer_id_(pointer_event.pointer_id()), |
| 665 details_(pointer_event.pointer_details()) {} |
| 666 |
647 PointerEvent::PointerEvent(const MouseEvent& mouse_event) | 667 PointerEvent::PointerEvent(const MouseEvent& mouse_event) |
648 : LocatedEvent(mouse_event), | 668 : LocatedEvent(mouse_event), |
649 pointer_id_(kMousePointerId), | 669 pointer_id_(kMousePointerId), |
650 details_(mouse_event.pointer_details()) { | 670 details_(mouse_event.pointer_details()) { |
651 switch (mouse_event.type()) { | 671 switch (mouse_event.type()) { |
652 case ET_MOUSE_PRESSED: | 672 case ET_MOUSE_PRESSED: |
653 SetType(ET_POINTER_DOWN); | 673 SetType(ET_POINTER_DOWN); |
654 break; | 674 break; |
655 | 675 |
656 case ET_MOUSE_DRAGGED: | 676 case ET_MOUSE_DRAGGED: |
(...skipping 390 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1047 gfx::PointF(x, y), | 1067 gfx::PointF(x, y), |
1048 time_stamp, | 1068 time_stamp, |
1049 flags | EF_FROM_TOUCH), | 1069 flags | EF_FROM_TOUCH), |
1050 details_(details) { | 1070 details_(details) { |
1051 } | 1071 } |
1052 | 1072 |
1053 GestureEvent::~GestureEvent() { | 1073 GestureEvent::~GestureEvent() { |
1054 } | 1074 } |
1055 | 1075 |
1056 } // namespace ui | 1076 } // namespace ui |
OLD | NEW |