Smooth scrolling - results!

Peter Hutterer peter.hutterer at
Tue Jun 15 18:25:29 PDT 2010

On Sat, Jun 12, 2010 at 06:03:24PM +0200, Max Schwarz wrote:
> Hi Simon,
> > You'll have to rebase them against git master to get into mainline. Why
> > didn't you use git master to start with?
> That's because I like to work with the versions I have installed. Otherwise I 
> would need to compile the whole Xorg stack, this way I can just change one 
> component at a time...
> Well, that was my decision, I will do the rebase some time this week.

with the exception of xorg-macros which you can safely upgrade, the input
drivers will all build on at least the last two releases.


> > Cool - but I'm not sue you'll get what you like. The acceleration is not
> > overly noise-resistant, though that may be made better.
> > 
> > The closes equivalent to your description would be an acceleration
> > profile which simply is zero below some threshold. But for handling
> > noise, you'll have to do some extra checks.
> > 
> > From your description, the following might work: You feed all wheel data
> > into an accel context (i.e. call ProcessVelocityData2D), as well as
> > keeping a sum yourself.
> > 
> > If PVD2D returns true, reset your sum to 0 and don't emit anything.
> > If PVD2D returns false AND abs(sum) > your_threshold (say 1 or 2), you
> > start emitting scrolling events until PVD2D gives you true again.
> > 
> > True means a lot of time has passed since the last call, by default 200 ms.
> Thanks for the pointers. Do you think it would be better to implement this in 
> the input drivers or in the server itself?
> I'll experiment with cutting the events below a certain threshold to 
> reduce/block the noise.

More information about the xorg-devel mailing list