summaryrefslogtreecommitdiffstats
path: root/ui/events/gestures
diff options
context:
space:
mode:
authorpkasting <pkasting@chromium.org>2014-10-09 16:27:05 -0700
committerCommit bot <commit-bot@chromium.org>2014-10-09 23:27:21 +0000
commit53aebab88d0b3304a5ba13ff08467fb2e39b674e (patch)
tree10873a8a2766cec67ebb42ac8358160be11f32cf /ui/events/gestures
parentbbc157765fb43670db2f14deae6a6b3e9d5e91c1 (diff)
downloadchromium_src-53aebab88d0b3304a5ba13ff08467fb2e39b674e.zip
chromium_src-53aebab88d0b3304a5ba13ff08467fb2e39b674e.tar.gz
chromium_src-53aebab88d0b3304a5ba13ff08467fb2e39b674e.tar.bz2
Change GestureConfiguration types to be consistent with each other and with the
types in GestureDetector::Config and other usage points. Basically: * Times should always be ints representing milliseconds * Distances and velocities should always be floats This eliminates a number of implicit type conversions, some of which trigger a (currently disabled) MSVC warning due to possible value truncation. BUG=81439 TEST=none Review URL: https://codereview.chromium.org/630003003 Cr-Commit-Position: refs/heads/master@{#299007}
Diffstat (limited to 'ui/events/gestures')
-rw-r--r--ui/events/gestures/gesture_configuration.cc28
-rw-r--r--ui/events/gestures/gesture_configuration.h96
-rw-r--r--ui/events/gestures/gesture_provider_aura.cc5
-rw-r--r--ui/events/gestures/gesture_recognizer_impl.cc6
4 files changed, 67 insertions, 68 deletions
diff --git a/ui/events/gestures/gesture_configuration.cc b/ui/events/gestures/gesture_configuration.cc
index 1ce13d7..78f6b57 100644
--- a/ui/events/gestures/gesture_configuration.cc
+++ b/ui/events/gestures/gesture_configuration.cc
@@ -6,30 +6,28 @@
namespace ui {
-int GestureConfiguration::default_radius_ = 25;
+float GestureConfiguration::default_radius_ = 25;
int GestureConfiguration::fling_max_cancel_to_down_time_in_ms_ = 400;
int GestureConfiguration::fling_max_tap_gap_time_in_ms_ = 200;
float GestureConfiguration::fling_velocity_cap_ = 17000.0f;
int GestureConfiguration::tab_scrub_activation_delay_in_ms_ = 200;
-double GestureConfiguration::long_press_time_in_seconds_ = 1.0;
-double GestureConfiguration::semi_long_press_time_in_seconds_ = 0.4;
-double GestureConfiguration::max_distance_for_two_finger_tap_in_pixels_ = 300;
-double GestureConfiguration::max_seconds_between_double_click_ = 0.7;
-double
- GestureConfiguration::max_separation_for_gesture_touches_in_pixels_ = 150;
+int GestureConfiguration::long_press_time_in_ms_ = 1000;
+int GestureConfiguration::semi_long_press_time_in_ms_ = 400;
+float GestureConfiguration::max_distance_for_two_finger_tap_in_pixels_ = 300;
+int GestureConfiguration::max_time_between_double_click_in_ms_ = 700;
+float GestureConfiguration::max_separation_for_gesture_touches_in_pixels_ = 150;
float GestureConfiguration::max_swipe_deviation_angle_ = 20;
-double
- GestureConfiguration::max_touch_down_duration_in_seconds_for_click_ = 0.8;
-double GestureConfiguration::max_touch_move_in_pixels_for_click_ = 15;
-double GestureConfiguration::max_distance_between_taps_for_double_tap_ = 20;
-double GestureConfiguration::min_distance_for_pinch_scroll_in_pixels_ = 20;
-double GestureConfiguration::min_pinch_update_distance_in_pixels_ = 5;
+int GestureConfiguration::max_touch_down_duration_for_click_in_ms_ = 800;
+float GestureConfiguration::max_touch_move_in_pixels_for_click_ = 15;
+float GestureConfiguration::max_distance_between_taps_for_double_tap_ = 20;
+float GestureConfiguration::min_distance_for_pinch_scroll_in_pixels_ = 20;
+float GestureConfiguration::min_pinch_update_distance_in_pixels_ = 5;
float GestureConfiguration::min_scroll_velocity_ = 30.0f;
-double GestureConfiguration::min_swipe_speed_ = 20;
+float GestureConfiguration::min_swipe_speed_ = 20;
// If this is too small, we currently can get single finger pinch zoom. See
// crbug.com/357237 for details.
-int GestureConfiguration::min_scaling_span_in_pixels_ = 125;
+float GestureConfiguration::min_scaling_span_in_pixels_ = 125;
int GestureConfiguration::show_press_delay_in_ms_ = 150;
// TODO(jdduke): Disable and remove entirely when issues with intermittent
diff --git a/ui/events/gestures/gesture_configuration.h b/ui/events/gestures/gesture_configuration.h
index 1537b8e..c72208ef 100644
--- a/ui/events/gestures/gesture_configuration.h
+++ b/ui/events/gestures/gesture_configuration.h
@@ -18,10 +18,12 @@ class EVENTS_BASE_EXPORT GestureConfiguration {
public:
// Ordered alphabetically ignoring underscores, to align with the
// associated list of prefs in gesture_prefs_aura.cc.
- static int default_radius() {
+ static float default_radius() {
return default_radius_;
}
- static void set_default_radius(int radius) { default_radius_ = radius; }
+ static void set_default_radius(float radius) {
+ default_radius_ = radius;
+ }
static int fling_max_cancel_to_down_time_in_ms() {
return fling_max_cancel_to_down_time_in_ms_;
}
@@ -34,34 +36,34 @@ class EVENTS_BASE_EXPORT GestureConfiguration {
static void set_fling_max_tap_gap_time_in_ms(int val) {
fling_max_tap_gap_time_in_ms_ = val;
}
- static double long_press_time_in_seconds() {
- return long_press_time_in_seconds_;
+ static int long_press_time_in_ms() {
+ return long_press_time_in_ms_;
}
- static double semi_long_press_time_in_seconds() {
- return semi_long_press_time_in_seconds_;
+ static int semi_long_press_time_in_ms() {
+ return semi_long_press_time_in_ms_;
}
- static double max_distance_for_two_finger_tap_in_pixels() {
+ static float max_distance_for_two_finger_tap_in_pixels() {
return max_distance_for_two_finger_tap_in_pixels_;
}
- static void set_max_distance_for_two_finger_tap_in_pixels(double val) {
+ static void set_max_distance_for_two_finger_tap_in_pixels(float val) {
max_distance_for_two_finger_tap_in_pixels_ = val;
}
- static void set_long_press_time_in_seconds(double val) {
- long_press_time_in_seconds_ = val;
+ static void set_long_press_time_in_ms(int val) {
+ long_press_time_in_ms_ = val;
}
- static void set_semi_long_press_time_in_seconds(double val) {
- semi_long_press_time_in_seconds_ = val;
+ static void set_semi_long_press_time_in_ms(int val) {
+ semi_long_press_time_in_ms_ = val;
}
- static double max_seconds_between_double_click() {
- return max_seconds_between_double_click_;
+ static int max_time_between_double_click_in_ms() {
+ return max_time_between_double_click_in_ms_;
}
- static void set_max_seconds_between_double_click(double val) {
- max_seconds_between_double_click_ = val;
+ static void set_max_time_between_double_click_in_ms(int val) {
+ max_time_between_double_click_in_ms_ = val;
}
- static int max_separation_for_gesture_touches_in_pixels() {
+ static float max_separation_for_gesture_touches_in_pixels() {
return max_separation_for_gesture_touches_in_pixels_;
}
- static void set_max_separation_for_gesture_touches_in_pixels(int val) {
+ static void set_max_separation_for_gesture_touches_in_pixels(float val) {
max_separation_for_gesture_touches_in_pixels_ = val;
}
static float max_swipe_deviation_angle() {
@@ -70,34 +72,34 @@ class EVENTS_BASE_EXPORT GestureConfiguration {
static void set_max_swipe_deviation_angle(float val) {
max_swipe_deviation_angle_ = val;
}
- static double max_touch_down_duration_in_seconds_for_click() {
- return max_touch_down_duration_in_seconds_for_click_;
+ static int max_touch_down_duration_for_click_in_ms() {
+ return max_touch_down_duration_for_click_in_ms_;
}
- static void set_max_touch_down_duration_in_seconds_for_click(double val) {
- max_touch_down_duration_in_seconds_for_click_ = val;
+ static void set_max_touch_down_duration_for_click_in_ms(int val) {
+ max_touch_down_duration_for_click_in_ms_ = val;
}
- static double max_touch_move_in_pixels_for_click() {
+ static float max_touch_move_in_pixels_for_click() {
return max_touch_move_in_pixels_for_click_;
}
- static void set_max_touch_move_in_pixels_for_click(double val) {
+ static void set_max_touch_move_in_pixels_for_click(float val) {
max_touch_move_in_pixels_for_click_ = val;
}
- static double max_distance_between_taps_for_double_tap() {
+ static float max_distance_between_taps_for_double_tap() {
return max_distance_between_taps_for_double_tap_;
}
- static void set_max_distance_between_taps_for_double_tap(double val) {
+ static void set_max_distance_between_taps_for_double_tap(float val) {
max_distance_between_taps_for_double_tap_ = val;
}
- static double min_distance_for_pinch_scroll_in_pixels() {
+ static float min_distance_for_pinch_scroll_in_pixels() {
return min_distance_for_pinch_scroll_in_pixels_;
}
- static void set_min_distance_for_pinch_scroll_in_pixels(double val) {
+ static void set_min_distance_for_pinch_scroll_in_pixels(float val) {
min_distance_for_pinch_scroll_in_pixels_ = val;
}
- static double min_pinch_update_distance_in_pixels() {
+ static float min_pinch_update_distance_in_pixels() {
return min_pinch_update_distance_in_pixels_;
}
- static void set_min_pinch_update_distance_in_pixels(double val) {
+ static void set_min_pinch_update_distance_in_pixels(float val) {
min_pinch_update_distance_in_pixels_ = val;
}
static float min_scroll_velocity() {
@@ -106,16 +108,16 @@ class EVENTS_BASE_EXPORT GestureConfiguration {
static void set_min_scroll_velocity(float val) {
min_scroll_velocity_ = val;
}
- static double min_swipe_speed() {
+ static float min_swipe_speed() {
return min_swipe_speed_;
}
- static void set_min_swipe_speed(double val) {
+ static void set_min_swipe_speed(float val) {
min_swipe_speed_ = val;
}
- static int min_scaling_span_in_pixels() {
+ static float min_scaling_span_in_pixels() {
return min_scaling_span_in_pixels_;
};
- static void set_min_scaling_span_in_pixels(int val) {
+ static void set_min_scaling_span_in_pixels(float val) {
min_scaling_span_in_pixels_ = val;
}
static int show_press_delay_in_ms() {
@@ -151,12 +153,12 @@ class EVENTS_BASE_EXPORT GestureConfiguration {
// The default touch radius length used when the only information given
// by the device is the touch center.
- static int default_radius_;
+ static float default_radius_;
// The maximum allowed distance between two fingers for a two finger tap. If
// the distance between two fingers is greater than this value, we will not
// recognize a two finger tap.
- static double max_distance_for_two_finger_tap_in_pixels_;
+ static float max_distance_for_two_finger_tap_in_pixels_;
// Maximum time between a GestureFlingCancel and a mousedown such that the
// mousedown is considered associated with the cancel event.
@@ -166,20 +168,20 @@ class EVENTS_BASE_EXPORT GestureConfiguration {
// suppressable tap.
static int fling_max_tap_gap_time_in_ms_;
- static double long_press_time_in_seconds_;
- static double semi_long_press_time_in_seconds_;
- static double max_seconds_between_double_click_;
- static double max_separation_for_gesture_touches_in_pixels_;
+ static int long_press_time_in_ms_;
+ static int semi_long_press_time_in_ms_;
+ static int max_time_between_double_click_in_ms_;
+ static float max_separation_for_gesture_touches_in_pixels_;
static float max_swipe_deviation_angle_;
- static double max_touch_down_duration_in_seconds_for_click_;
- static double max_touch_move_in_pixels_for_click_;
- static double max_distance_between_taps_for_double_tap_;
- static double min_distance_for_pinch_scroll_in_pixels_;
+ static int max_touch_down_duration_for_click_in_ms_;
+ static float max_touch_move_in_pixels_for_click_;
+ static float max_distance_between_taps_for_double_tap_;
+ static float min_distance_for_pinch_scroll_in_pixels_;
// Only used with --compensate-for-unstable-pinch-zoom.
- static double min_pinch_update_distance_in_pixels_;
+ static float min_pinch_update_distance_in_pixels_;
static float min_scroll_velocity_;
- static double min_swipe_speed_;
- static int min_scaling_span_in_pixels_;
+ static float min_swipe_speed_;
+ static float min_scaling_span_in_pixels_;
static int show_press_delay_in_ms_;
static int scroll_debounce_interval_in_ms_;
static float fling_velocity_cap_;
diff --git a/ui/events/gestures/gesture_provider_aura.cc b/ui/events/gestures/gesture_provider_aura.cc
index a731357..d3ef218 100644
--- a/ui/events/gestures/gesture_provider_aura.cc
+++ b/ui/events/gestures/gesture_provider_aura.cc
@@ -122,12 +122,11 @@ bool GestureProviderAura::IsConsideredDoubleTap(
const GestureEventData& current_tap) const {
if (current_tap.time - previous_tap.time >
base::TimeDelta::FromMilliseconds(
- ui::GestureConfiguration::max_seconds_between_double_click() *
- 1000)) {
+ ui::GestureConfiguration::max_time_between_double_click_in_ms())) {
return false;
}
- double double_tap_slop_square =
+ float double_tap_slop_square =
GestureConfiguration::max_distance_between_taps_for_double_tap();
double_tap_slop_square *= double_tap_slop_square;
const float delta_x = previous_tap.x - current_tap.x;
diff --git a/ui/events/gestures/gesture_recognizer_impl.cc b/ui/events/gestures/gesture_recognizer_impl.cc
index 5f6cfda..9f6eb3e 100644
--- a/ui/events/gestures/gesture_recognizer_impl.cc
+++ b/ui/events/gestures/gesture_recognizer_impl.cc
@@ -91,12 +91,12 @@ GestureConsumer* GestureRecognizerImpl::GetTargetForGestureEvent(
GestureConsumer* GestureRecognizerImpl::GetTargetForLocation(
const gfx::PointF& location, int source_device_id) {
- const int max_distance =
+ const float max_distance =
GestureConfiguration::max_separation_for_gesture_touches_in_pixels();
gfx::PointF closest_point;
int closest_touch_id = 0;
- float closest_distance_squared = std::numeric_limits<float>::infinity();
+ double closest_distance_squared = std::numeric_limits<double>::infinity();
std::map<GestureConsumer*, GestureProviderAura*>::iterator i;
for (i = consumer_gesture_provider_.begin();
@@ -109,7 +109,7 @@ GestureConsumer* GestureRecognizerImpl::GetTargetForLocation(
gfx::PointF point(pointer_state.GetX(j), pointer_state.GetY(j));
// Relative distance is all we need here, so LengthSquared() is
// appropriate, and cheaper than Length().
- float distance_squared = (point - location).LengthSquared();
+ double distance_squared = (point - location).LengthSquared();
if (distance_squared < closest_distance_squared) {
closest_point = point;
closest_touch_id = pointer_state.GetPointerId(j);