I agree that splitting up the patches is a good idea, but is it
necessary that we continue supporting XInput 2.0? 2.1 was released in
2011 and I doubt many people running the latest versions of wine are
going to be on such an ancient xserver.
Also, I am not quite sure what you mean by replacing the existing code
with the rawinput version. Windows raw-input still operates on ints,
and XI2 only sends rawmotion mouse events in raw_values as whole
numbers, even if they're floats. However, when getting the data from
valuators.values, there are not whole due from mouse acceleration /
scaling. Even if we did send the floats to wineserver, I don't know
how we'd transform them ourselves to match what the DE does ourselves.
On Mon, Jul 29, 2019 at 10:14 AM Rémi Bernon <rbernon(a)codeweavers.com> wrote:
This would benefit from a split between xinput 2.1 request (as attached
for example) and the original raw-input related patch.
Also, I believe you can completely replace the existing code with you
raw input version, and remove all the "extra" level used for cursor
clipping.
This also means that the "Don't react to small slow mouse movements."
patch may now be obsolete as the raw values will directly be passed to
the server.
As a related note, also for the next patch in the serie, AFAICS Windows
raw values for X/Y movements are the same between Windows and XInput2,
but I see a 8x scaling factor for the mouse wheel values that may be
missing.
--
Rémi Bernon <rbernon(a)codeweavers.com>