mirror of
https://github.com/torvalds/linux.git
synced 2024-11-16 17:12:06 +00:00
Input: small tweak to autorepeat handling
If a device does not support autorepeat or does not emit any key events we should not be scanning all events in a packet to decide if we should start or stop autorepeat function. Signed-off-by: Anshul Garg <anshul.g@samsung.com> Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
This commit is contained in:
parent
061a5ad7c9
commit
5ab1714570
@ -152,12 +152,14 @@ static void input_pass_values(struct input_dev *dev,
|
||||
add_input_randomness(vals->type, vals->code, vals->value);
|
||||
|
||||
/* trigger auto repeat for key events */
|
||||
for (v = vals; v != vals + count; v++) {
|
||||
if (v->type == EV_KEY && v->value != 2) {
|
||||
if (v->value)
|
||||
input_start_autorepeat(dev, v->code);
|
||||
else
|
||||
input_stop_autorepeat(dev);
|
||||
if (test_bit(EV_REP, dev->evbit) && test_bit(EV_KEY, dev->evbit)) {
|
||||
for (v = vals; v != vals + count; v++) {
|
||||
if (v->type == EV_KEY && v->value != 2) {
|
||||
if (v->value)
|
||||
input_start_autorepeat(dev, v->code);
|
||||
else
|
||||
input_stop_autorepeat(dev);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user