| 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/gestures/gesture_recognizer_impl.h" | 5 #include "ui/events/gestures/gesture_recognizer_impl.h" |
| 6 | 6 |
| 7 #include <limits> | 7 #include <limits> |
| 8 | 8 |
| 9 #include "base/command_line.h" | 9 #include "base/command_line.h" |
| 10 #include "base/logging.h" | 10 #include "base/logging.h" |
| (...skipping 216 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 227 | 227 |
| 228 void GestureRecognizerImpl::DispatchGestureEvent(GestureEvent* event) { | 228 void GestureRecognizerImpl::DispatchGestureEvent(GestureEvent* event) { |
| 229 GestureConsumer* consumer = GetTargetForGestureEvent(*event); | 229 GestureConsumer* consumer = GetTargetForGestureEvent(*event); |
| 230 if (consumer) { | 230 if (consumer) { |
| 231 GestureEventHelper* helper = FindDispatchHelperForConsumer(consumer); | 231 GestureEventHelper* helper = FindDispatchHelperForConsumer(consumer); |
| 232 if (helper) | 232 if (helper) |
| 233 helper->DispatchGestureEvent(event); | 233 helper->DispatchGestureEvent(event); |
| 234 } | 234 } |
| 235 } | 235 } |
| 236 | 236 |
| 237 bool GestureRecognizerImpl::ProcessTouchEventPreDispatch( | 237 bool GestureRecognizerImpl::ProcessTouchEvent(const TouchEvent& event, |
| 238 const TouchEvent& event, | 238 GestureConsumer* consumer) { |
| 239 GestureConsumer* consumer) { | |
| 240 SetupTargets(event, consumer); | 239 SetupTargets(event, consumer); |
| 241 | 240 |
| 242 if (event.result() & ER_CONSUMED) | 241 if (event.result() & ER_CONSUMED) |
| 243 return false; | 242 return false; |
| 244 | 243 |
| 245 GestureProviderAura* gesture_provider = | 244 GestureProviderAura* gesture_provider = |
| 246 GetGestureProviderForConsumer(consumer); | 245 GetGestureProviderForConsumer(consumer); |
| 247 return gesture_provider->OnTouchEvent(event); | 246 return gesture_provider->OnTouchEvent(event); |
| 248 } | 247 } |
| 249 | 248 |
| 250 GestureRecognizer::Gestures* | 249 GestureRecognizer::Gestures* GestureRecognizerImpl::ProcessTouchEventAck( |
| 251 GestureRecognizerImpl::ProcessTouchEventPostDispatch( | |
| 252 const TouchEvent& event, | 250 const TouchEvent& event, |
| 253 ui::EventResult result, | 251 ui::EventResult result, |
| 254 GestureConsumer* consumer) { | 252 GestureConsumer* consumer) { |
| 253 DCHECK(!(result & ui::ER_CONSUMED)); |
| 255 GestureProviderAura* gesture_provider = | 254 GestureProviderAura* gesture_provider = |
| 256 GetGestureProviderForConsumer(consumer); | 255 GetGestureProviderForConsumer(consumer); |
| 257 gesture_provider->OnTouchEventAck(result != ER_UNHANDLED); | 256 gesture_provider->OnTouchEventAck(result != ER_UNHANDLED); |
| 258 return gesture_provider->GetAndResetPendingGestures(); | |
| 259 } | |
| 260 | |
| 261 GestureRecognizer::Gestures* GestureRecognizerImpl::ProcessTouchEventOnAsyncAck( | |
| 262 const TouchEvent& event, | |
| 263 ui::EventResult result, | |
| 264 GestureConsumer* consumer) { | |
| 265 if (result & ui::ER_CONSUMED) | |
| 266 return NULL; | |
| 267 GestureProviderAura* gesture_provider = | |
| 268 GetGestureProviderForConsumer(consumer); | |
| 269 gesture_provider->OnTouchEventAck(result != ER_UNHANDLED); | |
| 270 return gesture_provider->GetAndResetPendingGestures(); | 257 return gesture_provider->GetAndResetPendingGestures(); |
| 271 } | 258 } |
| 272 | 259 |
| 273 bool GestureRecognizerImpl::CleanupStateForConsumer( | 260 bool GestureRecognizerImpl::CleanupStateForConsumer( |
| 274 GestureConsumer* consumer) { | 261 GestureConsumer* consumer) { |
| 275 bool state_cleaned_up = false; | 262 bool state_cleaned_up = false; |
| 276 | 263 |
| 277 if (consumer_gesture_provider_.count(consumer)) { | 264 if (consumer_gesture_provider_.count(consumer)) { |
| 278 state_cleaned_up = true; | 265 state_cleaned_up = true; |
| 279 delete consumer_gesture_provider_[consumer]; | 266 delete consumer_gesture_provider_[consumer]; |
| (...skipping 59 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 339 std::vector<GestureEventHelper*>::iterator it; | 326 std::vector<GestureEventHelper*>::iterator it; |
| 340 for (it = helpers.begin(); it != helpers.end(); ++it) | 327 for (it = helpers.begin(); it != helpers.end(); ++it) |
| 341 gesture_recognizer->AddGestureEventHelper(*it); | 328 gesture_recognizer->AddGestureEventHelper(*it); |
| 342 | 329 |
| 343 helpers.clear(); | 330 helpers.clear(); |
| 344 g_gesture_recognizer_instance = | 331 g_gesture_recognizer_instance = |
| 345 static_cast<GestureRecognizerImpl*>(gesture_recognizer); | 332 static_cast<GestureRecognizerImpl*>(gesture_recognizer); |
| 346 } | 333 } |
| 347 | 334 |
| 348 } // namespace ui | 335 } // namespace ui |
| OLD | NEW |