| 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..3e5ae290a1a7e6a38b3df80828f0d1bce934793c
|
| --- /dev/null
|
| +++ b/ui/events/gesture_detection/gesture_configuration.cc
|
| @@ -0,0 +1,75 @@
|
| +// Copyright 2014 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 {
|
| +namespace {
|
| +
|
| +GestureConfiguration* instance = nullptr;
|
| +
|
| +} // namespace
|
| +
|
| +// static
|
| +void GestureConfiguration::SetInstance(GestureConfiguration* config) {
|
| + instance = config;
|
| +}
|
| +
|
| +// static
|
| +GestureConfiguration* GestureConfiguration::GetInstance() {
|
| + if (instance)
|
| + return instance;
|
| +
|
| + return GestureConfiguration::GetPlatformSpecificInstance();
|
| +}
|
| +
|
| +GestureConfiguration::GestureConfiguration()
|
| + : default_radius_(25),
|
| + double_tap_enabled_(false),
|
| + double_tap_timeout_in_ms_(400),
|
| + fling_max_cancel_to_down_time_in_ms_(400),
|
| + fling_max_tap_gap_time_in_ms_(200),
|
| + gesture_begin_end_types_enabled_(false),
|
| + long_press_time_in_ms_(1000),
|
| + max_distance_between_taps_for_double_tap_(20),
|
| + max_distance_for_two_finger_tap_in_pixels_(300),
|
| + max_fling_velocity_(17000.0f),
|
| + max_gesture_bounds_length_(0),
|
| + max_separation_for_gesture_touches_in_pixels_(150),
|
| + max_swipe_deviation_angle_(20),
|
| + max_time_between_double_click_in_ms_(700),
|
| + max_touch_down_duration_for_click_in_ms_(800),
|
| + max_touch_move_in_pixels_for_click_(15),
|
| + min_distance_for_pinch_scroll_in_pixels_(20),
|
| + min_fling_velocity_(30.0f),
|
| + min_gesture_bounds_length_(0),
|
| + min_pinch_update_span_delta_(0),
|
| + // 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),
|
| + // The default value of min_scaling_touch_major_ is 2 * default_radius_.
|
| + min_scaling_touch_major_(50),
|
| + min_swipe_velocity_(20),
|
| + // 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
|
| + semi_long_press_time_in_ms_(400),
|
| + show_press_delay_in_ms_(150),
|
| + // The default value of span_slop_ is
|
| + // 2 * max_touch_move_in_pixels_for_click_.
|
| + span_slop_(30),
|
| + swipe_enabled_(false),
|
| + tab_scrub_activation_delay_in_ms_(200),
|
| + two_finger_tap_enabled_(false),
|
| + velocity_tracker_strategy_(VelocityTracker::Strategy::STRATEGY_DEFAULT) {
|
| +}
|
| +
|
| +GestureConfiguration::~GestureConfiguration() {
|
| +}
|
| +
|
| +} // namespace ui
|
|
|