| Index: ui/views/events/event.cc
|
| diff --git a/ui/views/events/event.cc b/ui/views/events/event.cc
|
| index 6954db664b83215518790d98375e90004f0cc785..887a6dd6a5a4075e59eb570affee966fcc198c2f 100644
|
| --- a/ui/views/events/event.cc
|
| +++ b/ui/views/events/event.cc
|
| @@ -197,12 +197,27 @@ const int MouseWheelEvent::kWheelDelta = 53;
|
|
|
| ////////////////////////////////////////////////////////////////////////////////
|
| // GestureEvent, public:
|
| +GestureEvent::GestureEvent(ui::EventType type,
|
| + int x,
|
| + int y,
|
| + int flags,
|
| + const base::Time& time_stamp,
|
| + float delta_x,
|
| + float delta_y,
|
| + unsigned int touch_ids_bitfield)
|
| + : LocatedEvent(type, gfx::Point(x, y), flags),
|
| + delta_x_(delta_x),
|
| + delta_y_(delta_y),
|
| + touch_ids_bitfield_(touch_ids_bitfield) {
|
| + set_time_stamp(time_stamp);
|
| +}
|
|
|
| GestureEvent::GestureEvent(const GestureEvent& model, View* source,
|
| View* target)
|
| : LocatedEvent(model, source, target),
|
| delta_x_(model.delta_x_),
|
| - delta_y_(model.delta_y_) {
|
| + delta_y_(model.delta_y_),
|
| + touch_ids_bitfield_(model.touch_ids_bitfield_) {
|
| }
|
|
|
| ////////////////////////////////////////////////////////////////////////////////
|
| @@ -211,24 +226,28 @@ GestureEvent::GestureEvent(const GestureEvent& model, View* source,
|
| GestureEvent::GestureEvent(const GestureEvent& model, View* root)
|
| : LocatedEvent(model, root),
|
| delta_x_(model.delta_x_),
|
| - delta_y_(model.delta_y_) {
|
| + delta_y_(model.delta_y_),
|
| + touch_ids_bitfield_(0) {
|
| }
|
|
|
| GestureEvent::GestureEvent(ui::EventType type, int x, int y, int flags)
|
| : LocatedEvent(type, gfx::Point(x, y), flags),
|
| delta_x_(0),
|
| - delta_y_(0) {
|
| + delta_y_(0),
|
| + touch_ids_bitfield_(0) {
|
| }
|
|
|
| GestureEvent::~GestureEvent() {
|
| }
|
|
|
| -#if !defined(USE_AURA)
|
| int GestureEvent::GetLowestTouchId() const {
|
| - // TODO:
|
| - return 0;
|
| + if (touch_ids_bitfield_ == 0)
|
| + return -1;
|
| + int i = -1;
|
| + // Find the index of the least significant 1 bit
|
| + while (!((1 << ++i) & touch_ids_bitfield_));
|
| + return i;
|
| }
|
| -#endif
|
|
|
| GestureEventForTest::GestureEventForTest(ui::EventType type,
|
| int x,
|
|
|