Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(51)

Unified Diff: views/widget/root_view.cc

Issue 6253005: touch: Gesture manager receives the touch-sequence status. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 9 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « views/touchui/gesture_manager.cc ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: views/widget/root_view.cc
diff --git a/views/widget/root_view.cc b/views/widget/root_view.cc
index a124e60ef67bf1d88c032084f8d8033fbd8759f4..3106e33bef4b2b6ba620762ccf9cf78a3131b2f0 100644
--- a/views/widget/root_view.cc
+++ b/views/widget/root_view.cc
@@ -315,13 +315,12 @@ View::TouchStatus RootView::OnTouchEvent(const TouchEvent& e) {
if (touch_pressed_handler_) {
TouchEvent touch_event(e, this, touch_pressed_handler_);
status = touch_pressed_handler_->ProcessTouchEvent(touch_event);
- gesture_manager_->ProcessTouchEventForGesture(e, this, true);
+ gesture_manager_->ProcessTouchEventForGesture(e, this, status);
sadrul 2011/01/18 19:33:30 Should the status fall through, or do we always wa
rjkroege 2011/01/18 20:01:28 the true was a bug. This is correct. (famous last
if (status == TOUCH_STATUS_END)
touch_pressed_handler_ = NULL;
return status;
}
- bool handled = false;
// Walk up the tree until we find a view that wants the touch event.
for (touch_pressed_handler_ = GetViewForPoint(e.location());
touch_pressed_handler_ && (touch_pressed_handler_ != this);
@@ -329,7 +328,6 @@ View::TouchStatus RootView::OnTouchEvent(const TouchEvent& e) {
if (!touch_pressed_handler_->IsEnabled()) {
// Disabled views eat events but are treated as not handled by the
// the GestureManager.
- handled = false;
status = TOUCH_STATUS_UNKNOWN;
break;
}
@@ -343,8 +341,6 @@ View::TouchStatus RootView::OnTouchEvent(const TouchEvent& e) {
if (status != TOUCH_STATUS_START)
touch_pressed_handler_ = NULL;
- handled = status != TOUCH_STATUS_UNKNOWN;
-
// The view could have removed itself from the tree when handling
// OnTouchEvent(). So handle as per OnMousePressed. NB: we
// assume that the RootView itself cannot be so removed.
@@ -357,8 +353,8 @@ View::TouchStatus RootView::OnTouchEvent(const TouchEvent& e) {
// If the view handled the event, leave touch_pressed_handler_ set and
// return true, which will cause subsequent drag/release events to get
// forwarded to that view.
- if (handled) {
- gesture_manager_->ProcessTouchEventForGesture(e, this, handled);
+ if (status != TOUCH_STATUS_UNKNOWN) {
+ gesture_manager_->ProcessTouchEventForGesture(e, this, status);
return status;
}
}
@@ -367,7 +363,7 @@ View::TouchStatus RootView::OnTouchEvent(const TouchEvent& e) {
touch_pressed_handler_ = NULL;
// Give the touch event to the gesture manager.
- gesture_manager_->ProcessTouchEventForGesture(e, this, handled);
+ gesture_manager_->ProcessTouchEventForGesture(e, this, status);
return status;
}
#endif
« no previous file with comments | « views/touchui/gesture_manager.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698