More bad news. xpad driver, which is used for all XInput devices,
actually does not confirm to Gamepad API specification I referred to
before. Instead of reporting triggers as ABS_HAT1X and ABS_HAT1Y, it
reports them as ABS_Z and ABS_RZ (Gamepad API offers no opinion as to
what the f..k those values are meant to be). There is also a patch to
change that behaviour to reporting ABS_BRAKE and ABS_THROTTLE, but it
seems it wasn't applied. There seem to be no complete agreement among
drivers' authors on what's the right course here. Some of them use
ABS_HAT1X/HAT1Y, other ABS_Z/RZ. Can you imagine any legitimate use of
ABS_Z/RZ to denote anything else BUT a trigger? If not, I guess the best
way would be to add ABS_Z and ABS_RZ to the list of single-axis sticks.