| 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 #ifndef UI_EVENTS_EVENT_H_ | 5 #ifndef UI_EVENTS_EVENT_H_ |
| 6 #define UI_EVENTS_EVENT_H_ | 6 #define UI_EVENTS_EVENT_H_ |
| 7 | 7 |
| 8 #include "base/basictypes.h" | 8 #include "base/basictypes.h" |
| 9 #include "base/compiler_specific.h" | 9 #include "base/compiler_specific.h" |
| 10 #include "base/event_types.h" | 10 #include "base/event_types.h" |
| (...skipping 245 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 256 ~CancelModeEvent() override; | 256 ~CancelModeEvent() override; |
| 257 }; | 257 }; |
| 258 | 258 |
| 259 class EVENTS_EXPORT LocatedEvent : public Event { | 259 class EVENTS_EXPORT LocatedEvent : public Event { |
| 260 public: | 260 public: |
| 261 ~LocatedEvent() override; | 261 ~LocatedEvent() override; |
| 262 | 262 |
| 263 float x() const { return location_.x(); } | 263 float x() const { return location_.x(); } |
| 264 float y() const { return location_.y(); } | 264 float y() const { return location_.y(); } |
| 265 void set_location(const gfx::PointF& location) { location_ = location; } | 265 void set_location(const gfx::PointF& location) { location_ = location; } |
| 266 // TODO(tdresser): Always return floating point location. See | |
| 267 // crbug.com/337824. | |
| 268 gfx::Point location() const { return gfx::ToFlooredPoint(location_); } | 266 gfx::Point location() const { return gfx::ToFlooredPoint(location_); } |
| 269 const gfx::PointF& location_f() const { return location_; } | 267 const gfx::PointF& location_f() const { return location_; } |
| 270 void set_root_location(const gfx::PointF& root_location) { | 268 void set_root_location(const gfx::PointF& root_location) { |
| 271 root_location_ = root_location; | 269 root_location_ = root_location; |
| 272 } | 270 } |
| 273 gfx::Point root_location() const { | 271 gfx::Point root_location() const { |
| 274 return gfx::ToFlooredPoint(root_location_); | 272 return gfx::ToFlooredPoint(root_location_); |
| 275 } | 273 } |
| 276 const gfx::PointF& root_location_f() const { | 274 const gfx::PointF& root_location_f() const { |
| 277 return root_location_; | 275 return root_location_; |
| 278 } | 276 } |
| 279 | 277 |
| 280 // Transform the locations using |inverted_root_transform|. | 278 // Transform the locations using |inverted_root_transform|. |
| 281 // This is applied to both |location_| and |root_location_|. | 279 // This is applied to both |location_| and |root_location_|. |
| 282 virtual void UpdateForRootTransform( | 280 virtual void UpdateForRootTransform( |
| 283 const gfx::Transform& inverted_root_transform); | 281 const gfx::Transform& inverted_root_transform); |
| 284 | 282 |
| 285 template <class T> void ConvertLocationToTarget(T* source, T* target) { | 283 template <class T> void ConvertLocationToTarget(T* source, T* target) { |
| 286 if (!target || target == source) | 284 if (!target || target == source) |
| 287 return; | 285 return; |
| 288 // TODO(tdresser): Rewrite ConvertPointToTarget to use PointF. See | |
| 289 // crbug.com/337824. | |
| 290 gfx::Point offset = gfx::ToFlooredPoint(location_); | 286 gfx::Point offset = gfx::ToFlooredPoint(location_); |
| 291 T::ConvertPointToTarget(source, target, &offset); | 287 T::ConvertPointToTarget(source, target, &offset); |
| 292 gfx::Vector2d diff = gfx::ToFlooredPoint(location_) - offset; | 288 gfx::Vector2d diff = gfx::ToFlooredPoint(location_) - offset; |
| 293 location_= location_ - diff; | 289 location_= location_ - diff; |
| 294 } | 290 } |
| 295 | 291 |
| 296 protected: | 292 protected: |
| 297 friend class LocatedEventTestApi; | 293 friend class LocatedEventTestApi; |
| 298 explicit LocatedEvent(const base::NativeEvent& native_event); | 294 explicit LocatedEvent(const base::NativeEvent& native_event); |
| 299 | 295 |
| (...skipping 619 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 919 | 915 |
| 920 const GestureEventDetails& details() const { return details_; } | 916 const GestureEventDetails& details() const { return details_; } |
| 921 | 917 |
| 922 private: | 918 private: |
| 923 GestureEventDetails details_; | 919 GestureEventDetails details_; |
| 924 }; | 920 }; |
| 925 | 921 |
| 926 } // namespace ui | 922 } // namespace ui |
| 927 | 923 |
| 928 #endif // UI_EVENTS_EVENT_H_ | 924 #endif // UI_EVENTS_EVENT_H_ |
| OLD | NEW |