On X11, mouse wheel inputs are almost impossible to produce since the ButtonPress and ButtonRelease events are sent simultaneously. I'd previously attempted to fix this by adding an input buffer (https://github.com/dolphin-emu/dolphin/pull/8815) but that wasn't quite right, and doing a completely working implementation of that seems tricky. As an alternative, XInput2 does expose the scroll wheel as an axis (similar to on Windows), so this provides that as an axis (Axis Z), and from my testing seems to work fairly reliably.
(Cherry-picked from my upstream PR https://github.com/dolphin-emu/dolphin/pull/11363)
On X11, mouse wheel inputs are almost impossible to produce since the ButtonPress and ButtonRelease events are sent simultaneously. I'd previously attempted to fix this by adding an input buffer (https://github.com/dolphin-emu/dolphin/pull/8815) but that wasn't quite right, and doing a completely working implementation of that seems tricky. As an alternative, XInput2 does expose the scroll wheel as an axis (similar to on Windows), so this provides that as an axis (Axis Z), and from my testing seems to work fairly reliably.