proto: clarify that the ei_seat capabilities depend on ei_device

Regardless of the ei_seat version, ei_seat.bind will support all
capablities of the negotiated ei_device interface. This means we don't need
to bump ei_seat just to add a new capability to ei_device.
This commit is contained in:
Peter Hutterer 2023-03-06 10:30:32 +10:00
parent 717900f6fe
commit ebd7d102cd

View file

@ -571,7 +571,12 @@
capabilities provided in the ei_seat.capabilities event. That event's capabilities capabilities provided in the ei_seat.capabilities event. That event's capabilities
are used as a mask of capabilities that can be bound. are used as a mask of capabilities that can be bound.
Binding capabilities that are not supported in the ei_seat's interface version Note that available seat capabilities are defined in the ei_device
interface and not dependent on the seat interface version. In other
words, ei_seat.bind supports any capability available in the
client-announced ei_device interface version.
Binding capabilities that are not supported in the ei_device's interface version
is a client bug and may result in disconnection. is a client bug and may result in disconnection.
A client may send this request multiple times to adjust the capabilities it A client may send this request multiple times to adjust the capabilities it
@ -611,6 +616,11 @@
capabilies and an EIS implementation may then create device based on the bound capabilies and an EIS implementation may then create device based on the bound
capabilities. capabilities.
Note that available seat capabilities are defined in the ei_device
interface and not dependent on the seat interface version. In other
words, ei_seat.bind supports any capability available in the
client-announced ei_device interface version.
Note that seat capabilities only represent a mask of possible capabilities on Note that seat capabilities only represent a mask of possible capabilities on
devices in this seat. A capability that is not available on the seat cannot devices in this seat. A capability that is not available on the seat cannot
ever be available on any device in this seat. For example, a seat that only has the ever be available on any device in this seat. For example, a seat that only has the