device: invert digitizer Y axis on Linux to match Windows

It may intuitively feel upside down, but the current behaviour actually matches base.mouseWatcherNode, so this is probably the most consistent thing to do.
This commit is contained in:
rdb 2019-12-18 17:55:44 +01:00
parent 02b0fe0063
commit 72c5555dc0

View File

@ -636,7 +636,8 @@ init_device() {
// Also T.Flight Hotas X throttle is reversed and can go backwards. // Also T.Flight Hotas X throttle is reversed and can go backwards.
if (axis == Axis::yaw || axis == Axis::rudder || axis == Axis::left_y || axis == Axis::right_y || if (axis == Axis::yaw || axis == Axis::rudder || axis == Axis::left_y || axis == Axis::right_y ||
(axis == Axis::throttle && (quirks & QB_reversed_throttle) != 0) || (axis == Axis::throttle && (quirks & QB_reversed_throttle) != 0) ||
(_device_class == DeviceClass::spatial_mouse && (axis == Axis::y || axis == Axis::z || axis == Axis::roll))) { (_device_class == DeviceClass::spatial_mouse && (axis == Axis::y || axis == Axis::z || axis == Axis::roll)) ||
(_device_class == DeviceClass::digitizer && axis == Axis::y)) {
std::swap(absinfo.maximum, absinfo.minimum); std::swap(absinfo.maximum, absinfo.minimum);
} }
if (axis == Axis::throttle && (quirks & QB_centered_throttle) != 0) { if (axis == Axis::throttle && (quirks & QB_centered_throttle) != 0) {