Port of Android platform gesture detection code to C++
commitd759e8aab600d2557513e4ba957f115580454709
authorjdduke@chromium.org <jdduke@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>
Wed, 26 Feb 2014 17:20:13 +0000 (26 17:20 +0000)
committerjdduke@chromium.org <jdduke@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>
Wed, 26 Feb 2014 17:20:13 +0000 (26 17:20 +0000)
tree65ffa2916570a4ba9c0582a6c3521c01d6a91a04
parent8a67750c2b06efa829fefddf16ea3cf58925145c
Port of Android platform gesture detection code to C++

This is a direct C++ port of all Java classes utilized by the current
ContentViewGestureHandler, including forks of Android C++ classes used in
gesture detection. This includes the following:

* ZoomManager - Forked from Chromium.
* SnapScrollingController - Forked from Chromium.
* GestureDetector - Forked from Chromium class originally from Android.
* ScaleGestureDetector - Forked from Android.
* VelocityTracker - Forked from Android.
* VelocityTrackerState - Forked from Android.
* BitSet32 - Forked from Android.

A MotionEvent class is introduced to abstract touch event API differences
between Chromium and Android, allowing other platforms to hook into the
detection pipeline without loss of generality.

Note that this patch is additive only, and does not affect gesture detection
for current platforms.  Wiring for Android and Aura will land in separate
patches. (see https://codereview.chromium.org/128613003/)

BUG=332418
NOTRY=true

Review URL: https://codereview.chromium.org/171773012

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@253489 0039d316-1c4b-4281-b951-d872f2087c98
28 files changed:
ui/events/events.gyp
ui/events/gesture_detection/OWNERS [new file with mode: 0644]
ui/events/gesture_detection/bitset_32.h [new file with mode: 0644]
ui/events/gesture_detection/bitset_32_unittest.cc [new file with mode: 0644]
ui/events/gesture_detection/gesture_config_helper.cc [new file with mode: 0644]
ui/events/gesture_detection/gesture_config_helper.h [new file with mode: 0644]
ui/events/gesture_detection/gesture_config_helper_android.cc [new file with mode: 0644]
ui/events/gesture_detection/gesture_config_helper_aura.cc [new file with mode: 0644]
ui/events/gesture_detection/gesture_detection_export.h [new file with mode: 0644]
ui/events/gesture_detection/gesture_detector.cc [new file with mode: 0644]
ui/events/gesture_detection/gesture_detector.h [new file with mode: 0644]
ui/events/gesture_detection/gesture_event_params.cc [new file with mode: 0644]
ui/events/gesture_detection/gesture_event_params.h [new file with mode: 0644]
ui/events/gesture_detection/gesture_provider.cc [new file with mode: 0644]
ui/events/gesture_detection/gesture_provider.h [new file with mode: 0644]
ui/events/gesture_detection/gesture_provider_unittest.cc [new file with mode: 0644]
ui/events/gesture_detection/mock_motion_event.cc [new file with mode: 0644]
ui/events/gesture_detection/mock_motion_event.h [new file with mode: 0644]
ui/events/gesture_detection/motion_event.h [new file with mode: 0644]
ui/events/gesture_detection/scale_gesture_detector.cc [new file with mode: 0644]
ui/events/gesture_detection/scale_gesture_detector.h [new file with mode: 0644]
ui/events/gesture_detection/snap_scroll_controller.cc [new file with mode: 0644]
ui/events/gesture_detection/snap_scroll_controller.h [new file with mode: 0644]
ui/events/gesture_detection/velocity_tracker.cc [new file with mode: 0644]
ui/events/gesture_detection/velocity_tracker.h [new file with mode: 0644]
ui/events/gesture_detection/velocity_tracker_state.cc [new file with mode: 0644]
ui/events/gesture_detection/velocity_tracker_state.h [new file with mode: 0644]
ui/events/gesture_detection/velocity_tracker_unittest.cc [new file with mode: 0644]