gesture_configuration.h revision 6e8cce623b6e4fe0c9e4af605d675dd9d0338c38
12a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// Copyright (c) 2013 The Chromium Authors. All rights reserved. 25821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Use of this source code is governed by a BSD-style license that can be 35821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// found in the LICENSE file. 45821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 568043e1e95eeb07d5cae7aca370b26518b0867d6Torne (Richard Coles)#ifndef UI_EVENTS_GESTURES_GESTURE_CONFIGURATION_H_ 668043e1e95eeb07d5cae7aca370b26518b0867d6Torne (Richard Coles)#define UI_EVENTS_GESTURES_GESTURE_CONFIGURATION_H_ 75821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 85821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include "base/basictypes.h" 9010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles)#include "ui/events/events_base_export.h" 105821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 115821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)namespace ui { 125821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 135821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// TODO: Expand this design to support multiple OS configuration 145821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// approaches (windows, chrome, others). This would turn into an 155821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// abstract base class. 165821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 17010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles)class EVENTS_BASE_EXPORT GestureConfiguration { 185821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) public: 192a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) // Number of parameters in the array of parameters for the fling acceleration 202a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) // curve. 212a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) static const int NumAccelParams = 4; 222a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) 235821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) // Ordered alphabetically ignoring underscores, to align with the 245821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) // associated list of prefs in gesture_prefs_aura.cc. 255821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) static int default_radius() { 265821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) return default_radius_; 275821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) } 285821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) static void set_default_radius(int radius) { default_radius_ = radius; } 292a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) static int fling_max_cancel_to_down_time_in_ms() { 302a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) return fling_max_cancel_to_down_time_in_ms_; 312a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) } 322a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) static void set_fling_max_cancel_to_down_time_in_ms(int val) { 332a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) fling_max_cancel_to_down_time_in_ms_ = val; 342a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) } 352a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) static int fling_max_tap_gap_time_in_ms() { 362a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) return fling_max_tap_gap_time_in_ms_; 372a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) } 382a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) static void set_fling_max_tap_gap_time_in_ms(int val) { 392a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) fling_max_tap_gap_time_in_ms_ = val; 402a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) } 415821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) static double long_press_time_in_seconds() { 425821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) return long_press_time_in_seconds_; 435821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) } 445821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) static double semi_long_press_time_in_seconds() { 455821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) return semi_long_press_time_in_seconds_; 465821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) } 475821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) static double max_distance_for_two_finger_tap_in_pixels() { 485821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) return max_distance_for_two_finger_tap_in_pixels_; 495821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) } 505821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) static void set_max_distance_for_two_finger_tap_in_pixels(double val) { 515821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) max_distance_for_two_finger_tap_in_pixels_ = val; 525821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) } 535821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) static int max_radius() { 545821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) return max_radius_; 555821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) } 565821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) static void set_long_press_time_in_seconds(double val) { 575821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) long_press_time_in_seconds_ = val; 585821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) } 595821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) static void set_semi_long_press_time_in_seconds(double val) { 605821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) semi_long_press_time_in_seconds_ = val; 615821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) } 625821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) static double max_seconds_between_double_click() { 635821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) return max_seconds_between_double_click_; 645821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) } 655821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) static void set_max_seconds_between_double_click(double val) { 665821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) max_seconds_between_double_click_ = val; 675821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) } 685821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) static int max_separation_for_gesture_touches_in_pixels() { 695821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) return max_separation_for_gesture_touches_in_pixels_; 705821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) } 715821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) static void set_max_separation_for_gesture_touches_in_pixels(int val) { 725821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) max_separation_for_gesture_touches_in_pixels_ = val; 735821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) } 746e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles) static float max_swipe_deviation_angle() { 756e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles) return max_swipe_deviation_angle_; 765821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) } 776e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles) static void set_max_swipe_deviation_angle(float val) { 786e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles) max_swipe_deviation_angle_ = val; 795821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) } 805821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) static double max_touch_down_duration_in_seconds_for_click() { 815821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) return max_touch_down_duration_in_seconds_for_click_; 825821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) } 835821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) static void set_max_touch_down_duration_in_seconds_for_click(double val) { 845821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) max_touch_down_duration_in_seconds_for_click_ = val; 855821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) } 865821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) static double max_touch_move_in_pixels_for_click() { 875821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) return max_touch_move_in_pixels_for_click_; 885821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) } 895821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) static void set_max_touch_move_in_pixels_for_click(double val) { 905821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) max_touch_move_in_pixels_for_click_ = val; 915821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) } 925821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) static double max_distance_between_taps_for_double_tap() { 935821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) return max_distance_between_taps_for_double_tap_; 945821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) } 955821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) static void set_max_distance_between_taps_for_double_tap(double val) { 965821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) max_distance_between_taps_for_double_tap_ = val; 975821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) } 985821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) static double min_distance_for_pinch_scroll_in_pixels() { 995821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) return min_distance_for_pinch_scroll_in_pixels_; 1005821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) } 1015821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) static void set_min_distance_for_pinch_scroll_in_pixels(double val) { 1025821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) min_distance_for_pinch_scroll_in_pixels_ = val; 1035821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) } 1045821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) static double min_flick_speed_squared() { 1055821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) return min_flick_speed_squared_; 1065821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) } 1075821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) static void set_min_flick_speed_squared(double val) { 1085821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) min_flick_speed_squared_ = val; 1095821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) } 1105821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) static double min_pinch_update_distance_in_pixels() { 1115821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) return min_pinch_update_distance_in_pixels_; 1125821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) } 1135821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) static void set_min_pinch_update_distance_in_pixels(double val) { 1145821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) min_pinch_update_distance_in_pixels_ = val; 1155821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) } 1165821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) static double min_rail_break_velocity() { 1175821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) return min_rail_break_velocity_; 1185821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) } 1195821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) static void set_min_rail_break_velocity(double val) { 1205821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) min_rail_break_velocity_ = val; 1215821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) } 1225821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) static double min_scroll_delta_squared() { 1235821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) return min_scroll_delta_squared_; 1245821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) } 1255821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) static void set_min_scroll_delta_squared(double val) { 1265821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) min_scroll_delta_squared_ = val; 1275821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) } 1282a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) static float min_scroll_velocity() { 1292a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) return min_scroll_velocity_; 1302a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) } 1312a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) static void set_min_scroll_velocity(float val) { 1322a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) min_scroll_velocity_ = val; 1332a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) } 1345821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) static double min_swipe_speed() { 1355821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) return min_swipe_speed_; 1365821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) } 1375821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) static void set_min_swipe_speed(double val) { 1385821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) min_swipe_speed_ = val; 1395821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) } 1405821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) static double min_touch_down_duration_in_seconds_for_click() { 1415821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) return min_touch_down_duration_in_seconds_for_click_; 1425821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) } 1435821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) static void set_min_touch_down_duration_in_seconds_for_click(double val) { 1445821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) min_touch_down_duration_in_seconds_for_click_ = val; 1455821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) } 146010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) 147010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) static int min_scaling_span_in_pixels() { 148010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) return min_scaling_span_in_pixels_; 149010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) }; 150010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) 151010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) static void set_min_scaling_span_in_pixels(int val) { 152010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) min_scaling_span_in_pixels_ = val; 153010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) } 154010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) 1555821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) static int points_buffered_for_velocity() { 1565821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) return points_buffered_for_velocity_; 1575821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) } 1585821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) static void set_points_buffered_for_velocity(int val) { 1595821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) points_buffered_for_velocity_ = val; 1605821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) } 1615821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) static double rail_break_proportion() { 1625821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) return rail_break_proportion_; 1635821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) } 1645821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) static void set_rail_break_proportion(double val) { 1655821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) rail_break_proportion_ = val; 1665821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) } 1675821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) static double rail_start_proportion() { 1685821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) return rail_start_proportion_; 1695821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) } 1705821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) static void set_rail_start_proportion(double val) { 1715821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) rail_start_proportion_ = val; 1725821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) } 173eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch static double scroll_prediction_seconds() { 174eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch return scroll_prediction_seconds_; 175eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch } 176eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch static void set_scroll_prediction_seconds(double val) { 177eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch scroll_prediction_seconds_ = val; 178eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch } 1791e9bf3e0803691d0a228da41fc608347b6db4340Torne (Richard Coles) static int show_press_delay_in_ms() { 1801e9bf3e0803691d0a228da41fc608347b6db4340Torne (Richard Coles) return show_press_delay_in_ms_; 1811e9bf3e0803691d0a228da41fc608347b6db4340Torne (Richard Coles) } 1821e9bf3e0803691d0a228da41fc608347b6db4340Torne (Richard Coles) static int set_show_press_delay_in_ms(int val) { 1831e9bf3e0803691d0a228da41fc608347b6db4340Torne (Richard Coles) return show_press_delay_in_ms_ = val; 1841e9bf3e0803691d0a228da41fc608347b6db4340Torne (Richard Coles) } 18546d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles) static int scroll_debounce_interval_in_ms() { 18646d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles) return scroll_debounce_interval_in_ms_; 18746d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles) } 18846d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles) static int set_scroll_debounce_interval_in_ms(int val) { 18946d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles) return scroll_debounce_interval_in_ms_ = val; 19046d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles) } 1912a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) static void set_fling_acceleration_curve_coefficients(int i, float val) { 1922a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) fling_acceleration_curve_coefficients_[i] = val; 1932a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) } 1942a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) static float fling_acceleration_curve_coefficients(int i) { 1952a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) return fling_acceleration_curve_coefficients_[i]; 1962a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) } 1972a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) static float fling_velocity_cap() { 1982a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) return fling_velocity_cap_; 1992a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) } 2002a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) static void set_fling_velocity_cap(float val) { 2012a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) fling_velocity_cap_ = val; 2025821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) } 203b2df76ea8fec9e32f6f3718986dba0d95315b29cTorne (Richard Coles) // TODO(davemoore): Move into chrome/browser/ui. 2042a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) static int tab_scrub_activation_delay_in_ms() { 2052a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) return tab_scrub_activation_delay_in_ms_; 2062a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) } 2072a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) static void set_tab_scrub_activation_delay_in_ms(int val) { 2082a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) tab_scrub_activation_delay_in_ms_ = val; 2095821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) } 2105821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 2115821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) private: 2125821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) // These are listed in alphabetical order ignoring underscores, to 2135821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) // align with the associated list of preferences in 2145821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) // gesture_prefs_aura.cc. These two lists should be kept in sync. 2155821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 2165821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) // The default touch radius length used when the only information given 2175821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) // by the device is the touch center. 2185821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) static int default_radius_; 2195821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 2205821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) // The maximum allowed distance between two fingers for a two finger tap. If 2215821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) // the distance between two fingers is greater than this value, we will not 2225821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) // recognize a two finger tap. 2235821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) static double max_distance_for_two_finger_tap_in_pixels_; 2245821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 2255821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) // The maximum allowed size for the radius of a touch region used in 2265821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) // forming an ET_GESTURE_TAP event. 2275821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) static int max_radius_; 2285821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 2292a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) // Maximum time between a GestureFlingCancel and a mousedown such that the 2302a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) // mousedown is considered associated with the cancel event. 2312a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) static int fling_max_cancel_to_down_time_in_ms_; 2322a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) 2332a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) // Maxium time between a mousedown/mouseup pair that is considered to be a 2342a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) // suppressable tap. 2352a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) static int fling_max_tap_gap_time_in_ms_; 2362a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) 2375821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) static double long_press_time_in_seconds_; 2385821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) static double semi_long_press_time_in_seconds_; 2395821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) static double max_seconds_between_double_click_; 2405821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) static double max_separation_for_gesture_touches_in_pixels_; 2416e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles) static float max_swipe_deviation_angle_; 2425821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) static double max_touch_down_duration_in_seconds_for_click_; 2435821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) static double max_touch_move_in_pixels_for_click_; 2445821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) static double max_distance_between_taps_for_double_tap_; 2455821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) static double min_distance_for_pinch_scroll_in_pixels_; 2465821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) static double min_flick_speed_squared_; 2475f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles) // Only used with --compensate-for-unstable-pinch-zoom. 2485821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) static double min_pinch_update_distance_in_pixels_; 2495821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) static double min_rail_break_velocity_; 2505821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) static double min_scroll_delta_squared_; 2512a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) static float min_scroll_velocity_; 2525821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) static double min_swipe_speed_; 2535821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) static double min_touch_down_duration_in_seconds_for_click_; 254010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) static int min_scaling_span_in_pixels_; 2555821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) static int points_buffered_for_velocity_; 2565821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) static double rail_break_proportion_; 2575821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) static double rail_start_proportion_; 258eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch static double scroll_prediction_seconds_; 2591e9bf3e0803691d0a228da41fc608347b6db4340Torne (Richard Coles) static int show_press_delay_in_ms_; 26046d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles) static int scroll_debounce_interval_in_ms_; 26146d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles) 2622a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) static float fling_acceleration_curve_coefficients_[NumAccelParams]; 2632a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) static float fling_velocity_cap_; 264b2df76ea8fec9e32f6f3718986dba0d95315b29cTorne (Richard Coles) // TODO(davemoore): Move into chrome/browser/ui. 2652a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) static int tab_scrub_activation_delay_in_ms_; 2665821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 2675821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) DISALLOW_COPY_AND_ASSIGN(GestureConfiguration); 2685821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)}; 2695821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 2705821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)} // namespace ui 2715821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 27268043e1e95eeb07d5cae7aca370b26518b0867d6Torne (Richard Coles)#endif // UI_EVENTS_GESTURES_GESTURE_CONFIGURATION_H_ 273