Clean up and fix a bunch of bugs with the pointer acceleration functions
See #803 for an explanation of some of the bugs found and fixed here.
The first few commits are merely cleanup and some reshuffling, the rest are bugs fixed:
- double-normalization in the default acceleration profile caused high-dpi mice to appear slower than they are, so the acceleration curve was "stretched" (i.e. deceleration applied to higher speeds than a 1000dpi mouse)
- normalization in the flat/low-dpi profiles for the "constant" acceleration caused high-dpi mice to be significantly slower for e.g. button scrolling
- we used manual normalization instead of the constant filter and that had the same effect
- the "constant" acceleration didn't use the fixed factor in the flat profile. users who want a flat profile but a faster/slower mouse would see a different speed for e.g. button scrolling
- a new trackpoint-flat profile that takes the magic multiplier into account. I admit that one is only marginally tested, maybe @abraxas228 can help here?
Fixes #798 (closed)