ozone not using input_absinfo.resolution to calculate radius |
||
Issue description
The evdev interface will report a resolution in absinfo, indicating the unit of value. It's currently not used in ozone, so the radius_x and radius_y will be wrong when chrome run on device reporting resolution.
Kernel definition of input_absinfo is here:
/**
* struct input_absinfo - used by EVIOCGABS/EVIOCSABS ioctls
* @value: latest reported value for the axis.
* @minimum: specifies minimum value for the axis.
* @maximum: specifies maximum value for the axis.
* @fuzz: specifies fuzz value that is used to filter noise from
* the event stream.
* @flat: values that are within this value will be discarded by
* joydev interface and reported as 0 instead.
* @resolution: specifies resolution for the values reported for
* the axis.
*
* Note that input core does not clamp reported values to the
* [minimum, maximum] limits, such task is left to userspace.
*
* Resolution for main axes (ABS_X, ABS_Y, ABS_Z) is reported in
* units per millimeter (units/mm), resolution for rotational axes
* (ABS_RX, ABS_RY, ABS_RZ) is reported in units per radian.
*/
struct input_absinfo {
__s32 value;
__s32 minimum;
__s32 maximum;
__s32 fuzz;
__s32 flat;
__s32 resolution;
};
,
Oct 5 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/e7f0416cefe3af6fee4921a25611b0af4cedf868 commit e7f0416cefe3af6fee4921a25611b0af4cedf868 Author: Jingkui Wang <jkwang@google.com> Date: Thu Oct 05 21:11:27 2017 Ozone: Use resolution to scale touch_major and touch_minor The units of touch_major and abs_mt_position_x could be different. We have to scale the values from touch_major/touch_minor before we map the value to radius (pixels). Bug: 771374 Change-Id: Ic5ca2424ff72e475e7146ff7a42725445d2fb250 Reviewed-on: https://chromium-review.googlesource.com/702758 Reviewed-by: Michael Spang <spang@chromium.org> Commit-Queue: Jingkui Wang <jkwang@google.com> Cr-Commit-Position: refs/heads/master@{#506859} [modify] https://crrev.com/e7f0416cefe3af6fee4921a25611b0af4cedf868/ui/events/ozone/evdev/event_device_test_util.cc [modify] https://crrev.com/e7f0416cefe3af6fee4921a25611b0af4cedf868/ui/events/ozone/evdev/event_device_test_util.h [modify] https://crrev.com/e7f0416cefe3af6fee4921a25611b0af4cedf868/ui/events/ozone/evdev/touch_event_converter_evdev.cc [modify] https://crrev.com/e7f0416cefe3af6fee4921a25611b0af4cedf868/ui/events/ozone/evdev/touch_event_converter_evdev.h [modify] https://crrev.com/e7f0416cefe3af6fee4921a25611b0af4cedf868/ui/events/ozone/evdev/touch_event_converter_evdev_unittest.cc
,
Nov 13 2017
|
||
►
Sign in to add a comment |
||
Comment 1 by jkwang@google.com
, Oct 4 2017