| Index: ui/events/gesture_detection/gesture_configuration.cc
|
| diff --git a/ui/events/gesture_detection/gesture_configuration.cc b/ui/events/gesture_detection/gesture_configuration.cc
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..cbbbec29d29549239e1bf2dbda347f85d787899b
|
| --- /dev/null
|
| +++ b/ui/events/gesture_detection/gesture_configuration.cc
|
| @@ -0,0 +1,72 @@
|
| +// Copyright (c) 2013 The Chromium Authors. All rights reserved.
|
| +// Use of this source code is governed by a BSD-style license that can be
|
| +// found in the LICENSE file.
|
| +
|
| +#include "ui/events/gesture_detection/gesture_configuration.h"
|
| +
|
| +namespace ui {
|
| +
|
| +GestureConfiguration::GestureConfiguration()
|
| + : default_radius_(25),
|
| + max_distance_for_two_finger_tap_in_pixels_(300),
|
| + fling_max_cancel_to_down_time_in_ms_(400),
|
| + fling_max_tap_gap_time_in_ms_(200),
|
| + long_press_time_in_ms_(1000),
|
| + semi_long_press_time_in_ms_(400),
|
| + max_time_between_double_click_in_ms_(700),
|
| + max_separation_for_gesture_touches_in_pixels_(150),
|
| + max_swipe_deviation_angle_(20),
|
| + max_touch_down_duration_for_click_in_ms_(800),
|
| + max_touch_move_in_pixels_for_click_(15),
|
| + max_distance_between_taps_for_double_tap_(20),
|
| + min_distance_for_pinch_scroll_in_pixels_(20),
|
| + min_pinch_update_distance_in_pixels_(5),
|
| + min_scroll_velocity_(30.0f),
|
| + min_swipe_speed_(20),
|
| +
|
| + // If this is too small, we currently can get single finger pinch zoom.
|
| + // See
|
| + // crbug.com/357237 for details.
|
| + min_scaling_span_in_pixels_(125),
|
| + show_press_delay_in_ms_(150),
|
| + fling_velocity_cap_(17000.0f),
|
| + tab_scrub_activation_delay_in_ms_(200) {
|
| +// TODO(jdduke): Disable and remove entirely when issues with intermittent
|
| +// scroll end detection on the Pixel are resolved, crbug.com/353702.
|
| +#if defined(OS_CHROMEOS)
|
| + scroll_debounce_interval_in_ms_ = 30;
|
| +#else
|
| + scroll_debounce_interval_in_ms_ = 0;
|
| +#endif
|
| +}
|
| +
|
| +GestureConfiguration::~GestureConfiguration() {
|
| +}
|
| +
|
| +GestureDetector::Config GestureConfiguration::DefaultGestureDetectorConfig() {
|
| + GestureDetector::Config config;
|
| + config.longpress_timeout =
|
| + base::TimeDelta::FromMilliseconds(long_press_time_in_ms());
|
| + config.showpress_timeout =
|
| + base::TimeDelta::FromMilliseconds(show_press_delay_in_ms());
|
| + config.double_tap_timeout =
|
| + base::TimeDelta::FromMilliseconds(semi_long_press_time_in_ms());
|
| + config.touch_slop = max_touch_move_in_pixels_for_click();
|
| + config.double_tap_slop = max_distance_between_taps_for_double_tap();
|
| + config.minimum_fling_velocity = min_scroll_velocity();
|
| + config.maximum_fling_velocity = fling_velocity_cap();
|
| +
|
| + return config;
|
| +}
|
| +
|
| +ScaleGestureDetector::Config
|
| +GestureConfiguration::DefaultScaleGestureDetectorConfig() {
|
| + ScaleGestureDetector::Config config;
|
| + config.span_slop = span_slop();
|
| + config.min_scaling_touch_major = min_scaling_touch_major();
|
| + config.min_scaling_span = min_scaling_span_in_pixels();
|
| + config.min_pinch_update_span_delta = min_pinch_update_span_delta();
|
| + return config;
|
| +}
|
| +
|
| +} // namespace ui
|
|
|