Skip to content

Draft: Add more device test data

Simon McVittie requested to merge wip/smcv/test-evdev-heuristic into main

steamrt/tasks#287

  • glib-backports: Add g_flags_get_value_string()

  • tests: Handle known-failing _srt_evdev_capabilities_guess_type() calls

    Our heuristic to identify game controllers, which is essentially the same as SDL's, cannot distinguish between a 3-axis accelerometer or gyro (which is not a joystick) and 3-axis driving or simulation pedals (which are). Before we add test data for those, we should make sure we can skip those test-cases.

  • tests: Add devices described on steam-devices and Proton issues

    Forwarded: https://github.com/libsdl-org/SDL/pull/7597

  • testevdev: Clarify that some buttons are actually keyboard keys

  • testevdev: Note a functionally-equivalent device

    We don't need to re-test the heuristic with the same input data, but knowing that another device has equivalent evdev metadata is useful information to record. Thanks to Jeremy Whiting.

    Forwarded: https://github.com/libsdl-org/SDL/pull/7791

  • testevdev: Finish incomplete data for Switch Pro Controller via USB

    This didn't include any buttons, which I assume was because I transcribed them incorrectly rather than reflecting reality. Confirmed against another Switch Pro Controller on a more recent kernel (thanks to Jeremy Whiting).

    Forwarded: https://github.com/libsdl-org/SDL/pull/7791

  • testevdev: Add test data for another Switch Pro Controller

    A newer evemu-describe transcript has this same controller with its buttons mapped differently, presumably a result of driver changes in the Linux kernel. Either way, we should recognise it as a gamepad. Thanks to Jeremy Whiting.

    Forwarded: https://github.com/libsdl-org/SDL/pull/7791

  • testevdev: Add Google Stadia controller

    This is a bit unusual because it has a small number of what would ordinarily be keyboard keys. Thanks to Jeremy Whiting for recording this.

    Forwarded: https://github.com/libsdl-org/SDL/pull/7791

  • testevdev: Add test data for Microsoft Xbox Series S|X Controller

    Like the Stadia controller, this is unusual because it represents the Share button as the Record key from a multimedia keyboard (as of Linux 6.2.11 with the xpad driver). Thanks to Jeremy Whiting.

    Forwarded: https://github.com/libsdl-org/SDL/pull/7791

  • testevdev: Add test data for Nintendo Switch Joy-Cons via Bluetooth

    Thanks to Jeremy Whiting.

    Forwarded: https://github.com/libsdl-org/SDL/pull/7791

  • testevdev: Expand test data for a DualSense (PS5) gamepad

    Also make details of PS4 gamepads (which are very similar from an evdev point of view) more specific.

    Thanks to Jeremy Whiting for recording these.

    Forwarded: https://github.com/libsdl-org/SDL/pull/7791

  • testevdev: Describe several equivalent devices

    https://github.com/ValveSoftware/steam-devices/pull/34 lists several more devices that are functionally equivalent to this one from the point of view of their evdev metadata. Thanks to apgrc.

    Forwarded: https://github.com/libsdl-org/SDL/pull/7791

  • testevdev: Add details of some more 8BitDo devices

    Thanks to Jeremy Whiting.

    Forwarded: https://github.com/libsdl-org/SDL/pull/7791

Merge request reports