This is an updated version of v3 of the inputfd protocol draft by Peter Hutterer <peter.hutterer at who-t.net>.
For previous versions, see: v1: https://lists.freedesktop.org/archives/wayland-devel/2017-March/033626.html v2: https://lists.freedesktop.org/archives/wayland-devel/2017-April/033819.html v3: https://lists.freedesktop.org/archives/wayland-devel/2017-August/034828.html
Quoting the last version:
This update is closer to v1 again than v2. Biggest change is: instead of a get_seat we have a get_seat_evdev request. Anything evdev is then hanging off that seat, basically in how it was before. The hierarchy of objects is thus something like this:
manager seat_evdev device_evdev device_evdev device_evdev
and in the future we could have other interfaces like this:
manager seat_evdev device_evdev device_evdev device_evdev device_evdev seat_hidraw device_hidraw device_hidraw device_hidraw seat_w3c device_w3c device_w3c
Having it split at the seat level means we don't have to pollute each interface with the different needs of the other interfaces. evdev is the easiest case, so that's done first. I dropped the extra properties, Bastien and I discussed this at GUADEC and we agreed it's better to implement the minimal version first and then see what we need before trying to come up with a generic solution.