IR remote control autorepeat / evdev

Dmitry Torokhov dmitry.torokhov at gmail.com
Wed May 11 13:53:32 PDT 2011


On Wed, May 11, 2011 at 08:59:16PM +0300, Anssi Hannula wrote:
> 
> I meant replacing the softrepeat with native repeat for such devices
> that have native repeats but no native release events:
> 
> - keypress from device => keydown + keyup
> - repeat from device => keydown + keyup
> - repeat from device => keydown + keyup
> 
> This is what e.g. ati_remote driver now does.
> 
> Or alternatively
> 
> - keypress from device => keydown
> - repeat from device => repeat
> - repeat from device => repeat
> - nothing for 250ms => keyup
> (doing it this way requires some extra handling in X server to stop its
> softrepeat from triggering, though, as previously noted)
> 
> With either of these, if one holds down volumeup, the repeat works, and
> stops volumeup'ing immediately when user releases the button (as it is
> supposed to).
> 

Unfortunately this does not work for devices that do not have hardware
autorepeat and also stops users from adjusting autorepeat parameters to
their liking.

It appears that the delay to check whether the key has been released is
too long (almost order of magnitude longer than our typical autorepeat
period). I think we should increase the period for remotes (both in
kernel and in X, and also see if the release check delay can be made
shorter, like 50-100 ms.

Thanks.

-- 
Dmitry


More information about the xorg-devel mailing list