int get_cap_xmid(const struct Capabilities *cap);
int get_cap_ymid(const struct Capabilities *cap);
+int get_cap_xmin(const struct Capabilities *cap);
+int get_cap_ymin(const struct Capabilities *cap);
+
int get_cap_xflip(const struct Capabilities *cap, int x);
int get_cap_yflip(const struct Capabilities *cap, int y);
int touch_max; // Maximum touch value.
int pad_width; // Width of the touchpad.
int pad_height; // Height of the touchpad.
+ int pad_xmin; // Minimum x coordinate.
+ int pad_ymin; // Minimum y coordinate.
// Set by config.
int touch_down; // When is a finger touching? 0 - 100 (percentage)
return (y->maximum + y->minimum) >> 1;
}
+int get_cap_xmin(const struct Capabilities *cap)
+{
+ const struct input_absinfo *x = &cap->abs[MTDEV_POSITION_X];
+ return x->minimum;
+}
+
+int get_cap_ymin(const struct Capabilities *cap)
+{
+ const struct input_absinfo *y = &cap->abs[MTDEV_POSITION_Y];
+ return y->minimum;
+}
+
int get_cap_xflip(const struct Capabilities *cap, int x)
{
const struct input_absinfo *i = &cap->abs[MTDEV_POSITION_X];
cfg->touch_minor = caps->has_abs[MTDEV_TOUCH_MINOR];
cfg->pad_width = get_cap_xsize(caps);
cfg->pad_height = get_cap_ysize(caps);
+ cfg->pad_xmin = get_cap_xmin(caps);
+ cfg->pad_ymin = get_cap_ymin(caps);
if (caps->has_abs[MTDEV_TOUCH_MAJOR] && caps->has_abs[MTDEV_WIDTH_MAJOR]) {
cfg->touch_type = MCFG_SCALE;