mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-15 16:24:13 +08:00
Input: atmel_mxt_ts - set pointer emulation on touchpads
Touchpads are pointers, so make sure to pass the correct values to input_mt_report_pointer_emulation(). Without this, tap-to-click doesn't work. Signed-off-by: Benson Leung <bleung@chromium.org> Signed-off-by: Stephen Warren <swarren@nvidia.com> Signed-off-by: Nick Dyer <nick.dyer@itdev.co.uk> Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
This commit is contained in:
parent
7a53d60926
commit
b735fbe064
@ -654,10 +654,11 @@ static void mxt_input_button(struct mxt_data *data, struct mxt_message *message)
|
||||
}
|
||||
}
|
||||
|
||||
static void mxt_input_sync(struct input_dev *input_dev)
|
||||
static void mxt_input_sync(struct mxt_data *data)
|
||||
{
|
||||
input_mt_report_pointer_emulation(input_dev, false);
|
||||
input_sync(input_dev);
|
||||
input_mt_report_pointer_emulation(data->input_dev,
|
||||
data->pdata->t19_num_keys);
|
||||
input_sync(data->input_dev);
|
||||
}
|
||||
|
||||
static void mxt_input_touchevent(struct mxt_data *data,
|
||||
@ -707,7 +708,7 @@ static void mxt_input_touchevent(struct mxt_data *data,
|
||||
if (status & MXT_T9_RELEASE) {
|
||||
input_mt_report_slot_state(input_dev,
|
||||
MT_TOOL_FINGER, 0);
|
||||
mxt_input_sync(input_dev);
|
||||
mxt_input_sync(data);
|
||||
}
|
||||
|
||||
/* Touch active */
|
||||
@ -783,7 +784,7 @@ static irqreturn_t mxt_process_messages_until_invalid(struct mxt_data *data)
|
||||
} while (reportid != 0xff);
|
||||
|
||||
if (update_input)
|
||||
mxt_input_sync(data->input_dev);
|
||||
mxt_input_sync(data);
|
||||
|
||||
return IRQ_HANDLED;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user