summaryrefslogtreecommitdiffstats
path: root/ui/events/gesture_detection
diff options
context:
space:
mode:
authorjdduke <jdduke@chromium.org>2015-07-09 12:33:06 -0700
committerCommit bot <commit-bot@chromium.org>2015-07-09 19:33:48 +0000
commitdcebeec14cf284e8d936e906bde40a80c1ae65ad (patch)
treef9234c4eafb1c3b65a4f82771535361d15c9e0e1 /ui/events/gesture_detection
parentcbfeea8f267452f358494721e32a2d140218167e (diff)
downloadchromium_src-dcebeec14cf284e8d936e906bde40a80c1ae65ad.zip
chromium_src-dcebeec14cf284e8d936e906bde40a80c1ae65ad.tar.gz
chromium_src-dcebeec14cf284e8d936e906bde40a80c1ae65ad.tar.bz2
[Android] Expose native ViewConfiguration constants as DIPs
Touch-related constants in Android's ViewConfiguration are exposed in device pixels. However, all native code that uses these values need DIPs. Rather than relying on the caller to do the scaling, which may be incorrect for external displays with different densities, expose the constants as DIPs directly. Longer term, we should instead use a context-specific lookup for ViewConfiguration values. BUG=310763 Review URL: https://codereview.chromium.org/1216933013 Cr-Commit-Position: refs/heads/master@{#338114}
Diffstat (limited to 'ui/events/gesture_detection')
-rw-r--r--ui/events/gesture_detection/gesture_configuration_android.cc22
1 files changed, 7 insertions, 15 deletions
diff --git a/ui/events/gesture_detection/gesture_configuration_android.cc b/ui/events/gesture_detection/gesture_configuration_android.cc
index 2cf29aa..4922559 100644
--- a/ui/events/gesture_detection/gesture_configuration_android.cc
+++ b/ui/events/gesture_detection/gesture_configuration_android.cc
@@ -31,35 +31,27 @@ class GestureConfigurationAndroid : public GestureConfiguration {
private:
GestureConfigurationAndroid() : GestureConfiguration() {
- float raw_pixel_to_dip_ratio = 1.f / gfx::Screen::GetNativeScreen()
- ->GetPrimaryDisplay()
- .device_scale_factor();
set_double_tap_enabled(true);
set_double_tap_timeout_in_ms(ViewConfiguration::GetDoubleTapTimeoutInMs());
set_gesture_begin_end_types_enabled(false);
set_long_press_time_in_ms(ViewConfiguration::GetLongPressTimeoutInMs());
set_max_distance_between_taps_for_double_tap(
- ViewConfiguration::GetDoubleTapSlopInPixels() * raw_pixel_to_dip_ratio);
+ ViewConfiguration::GetDoubleTapSlopInDips());
set_max_fling_velocity(
- ViewConfiguration::GetMaximumFlingVelocityInPixelsPerSecond() *
- raw_pixel_to_dip_ratio);
+ ViewConfiguration::GetMaximumFlingVelocityInDipsPerSecond());
set_max_gesture_bounds_length(kMaxGestureBoundsLengthDips);
set_max_touch_move_in_pixels_for_click(
- ViewConfiguration::GetTouchSlopInPixels() * raw_pixel_to_dip_ratio);
+ ViewConfiguration::GetTouchSlopInDips());
set_min_fling_velocity(
- ViewConfiguration::GetMinimumFlingVelocityInPixelsPerSecond() *
- raw_pixel_to_dip_ratio);
+ ViewConfiguration::GetMinimumFlingVelocityInDipsPerSecond());
set_min_gesture_bounds_length(kMinGestureBoundsLengthDips);
set_min_pinch_update_span_delta(0.f);
set_min_scaling_span_in_pixels(
- ViewConfiguration::GetMinScalingSpanInPixels() *
- raw_pixel_to_dip_ratio);
+ ViewConfiguration::GetMinScalingSpanInDips());
set_min_scaling_touch_major(
- ViewConfiguration::GetMinScalingTouchMajorInPixels() *
- raw_pixel_to_dip_ratio);
+ ViewConfiguration::GetMinScalingTouchMajorInDips());
set_show_press_delay_in_ms(ViewConfiguration::GetTapTimeoutInMs());
- set_span_slop(ViewConfiguration::GetTouchSlopInPixels() * 2.f *
- raw_pixel_to_dip_ratio);
+ set_span_slop(ViewConfiguration::GetTouchSlopInDips() * 2.f);
}
friend struct DefaultSingletonTraits<GestureConfigurationAndroid>;