I've been experimenting with using the software autorepeat functionality in
drivers/input/input.c and have the problem that it autorepeats all EV_KEY
reported events, this includes mouse buttons etc. which for a combined
mouse/keyboard device is undesirable. I appreciate that I could override the
functionality by providing my own implementation of software autorepeat,
which filters such buttons from being repeated, but I was wondering whether
this is something that should be included in the default implementation?
I'm not sure where the definition of KEY_MIN_INTERESTING comes from but it
appears to me that it is only keys with codes less than this value that
should be repeated?
So, please find attached a patch that implements the functionality I am
looking for...
Best regards
Peter Stokes
Signed-off-by: Peter Stokes <[EMAIL PROTECTED]>
--- linux-2.6.24-orig/drivers/input/input.c 2008-01-24 22:58:37.000000000 +0000
+++ linux-2.6.24/drivers/input/input.c 2008-02-11 20:02:03.000000000 +0000
@@ -123,6 +123,7 @@
static void input_start_autorepeat(struct input_dev *dev, int code)
{
if (test_bit(EV_REP, dev->evbit) &&
+ code < KEY_MIN_INTERESTING &&
dev->rep[REP_PERIOD] && dev->rep[REP_DELAY] &&
dev->timer.data) {
dev->repeat_key = code;