input: change pointer screen crossing behaviour for multiple ScreenRecs
above commit changed master->last.valuators to be in desktop-wide coordinates, but updateSlaveDeviceCoords still uses screen scaling. If a device is on a screen that is not the top-left screen, a slave switch to an absolute device will cause the coordinates to be outside the axis boundaries and thus force that device to a specific screen.
Test case: two screens, move pointer to right screen with a mouse, then use a synaptics touchpad to move left. The touchpad is absolute, so when updating the coordinates, last.valuator on the device will be axmax+xd where axmax is the device's maximum range for x and xd the x coordinate on that screen in device-specific coordinates. e.g. in synaptic's case that could be something like 5400 + 1300.
When crossing screens, that will always map to the second screen, causing the device to be stuck on that screen.
This is a mass change of bugs. Bugs assigned to me that haven't been updated in the last 3 years are closed as WONTFIX, because, well, let's at least be honest about it.
Please do not re-open unless you have a really good reason to do so (e.g. you're fixing it yourself). If it hasn't been fixed in the last 3 years, it probably won't be fixed anytime soon either. Sorry.