diff options
author | varunjain@chromium.org <varunjain@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-06-07 05:56:15 +0000 |
---|---|---|
committer | varunjain@chromium.org <varunjain@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-06-07 05:56:15 +0000 |
commit | a702758968507f0eabb01651c8a98d240934144b (patch) | |
tree | 37b3db611c163ec2372c825dc30f8c2d1c72d4ee /ui/views | |
parent | 6b87e6ca65abbb08e15430fd3b2af0bda68de83a (diff) | |
download | chromium_src-a702758968507f0eabb01651c8a98d240934144b.zip chromium_src-a702758968507f0eabb01651c8a98d240934144b.tar.gz chromium_src-a702758968507f0eabb01651c8a98d240934144b.tar.bz2 |
Fix TAP_DOWN gesture event:
1. GESTURE_TAP_DOWN should be sent only on the first TOUCH_PRESSED.
2. New gesture GESTURE_BEGIN shuold be sent on all TOUCH_PRESSED.
3. Rename GESTURE_TAP_UP to GESTURE_END.
BUG=131007
TEST=manual
Review URL: https://chromiumcodereview.appspot.com/10533029
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@140967 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'ui/views')
-rw-r--r-- | ui/views/view_unittest.cc | 2 | ||||
-rw-r--r-- | ui/views/widget/root_view.cc | 2 | ||||
-rw-r--r-- | ui/views/widget/widget.cc | 8 |
3 files changed, 7 insertions, 5 deletions
diff --git a/ui/views/view_unittest.cc b/ui/views/view_unittest.cc index 70e6cee..3b6099d 100644 --- a/ui/views/view_unittest.cc +++ b/ui/views/view_unittest.cc @@ -603,7 +603,7 @@ TEST_F(ViewTest, GestureEvent) { EXPECT_EQ(ui::ET_UNKNOWN, v1->last_gesture_event_type_); // Simulate an up so that RootView is no longer targetting |v3|. - GestureEventForTest g1_up(ui::ET_GESTURE_TAP_UP, 110, 110, 0); + GestureEventForTest g1_up(ui::ET_GESTURE_END, 110, 110, 0); root->OnGestureEvent(g1_up); v1->Reset(); diff --git a/ui/views/widget/root_view.cc b/ui/views/widget/root_view.cc index 6b6c14b..f10bd5b 100644 --- a/ui/views/widget/root_view.cc +++ b/ui/views/widget/root_view.cc @@ -450,7 +450,7 @@ ui::GestureStatus RootView::OnGestureEvent(const GestureEvent& event) { View* handler = gesture_handler_; GestureEvent handler_event(event, this, gesture_handler_); // TODO: should only do this for the last touch id that goes up. - if (event.type() == ui::ET_GESTURE_TAP_UP) + if (event.type() == ui::ET_GESTURE_END) gesture_handler_ = NULL; return handler->OnGestureEvent(handler_event); } diff --git a/ui/views/widget/widget.cc b/ui/views/widget/widget.cc index 7626e96..2231378 100644 --- a/ui/views/widget/widget.cc +++ b/ui/views/widget/widget.cc @@ -1116,9 +1116,11 @@ ui::GestureStatus Widget::OnGestureEvent(const GestureEvent& event) { // dragging) may explicitly capture. break; - case ui::ET_GESTURE_TAP_UP: - is_touch_down_ = false; - ReleaseCapture(); + case ui::ET_GESTURE_END: + if (event.delta_x() == 1) { + is_touch_down_ = false; + ReleaseCapture(); + } break; default: |