Comment 15 for bug 788488

Revision history for this message
In , Mjdiliscia (mjdiliscia) wrote :

Created attachment 38026
Proposed fix

I have the same problem. So I made a little change to synaptics.c that seems to fix the problem.
Basically, what I do is fix hw->x to a maximum of param->right_edge when calculating delta x (on ComputeDelta(...)). So, it shouldn't mess with other parts of the driver, and anyway hw->x shouldn't be higher than RightEdge at that point of the code.

The modification is working great in my laptop, but i didn't try on other ones. If someone like to try it, I leave you the patch here. If this breaks something else, I would be glad to refix it (if I can, of course).
By the way, if the fix it's too dirty, the problem seems to reside on the fact that some touchpads' hardware 'x' jumps from around 5900 to exactly 8176 and back , close to their right edge. So maybe a better solution is to keep watch of the 8176 value.