This crate provides bindings to the official wayland protocol extensions provided in https://gitlab.freedesktop.org/wayland/wayland-protocols
These bindings are built on top of the crates wayland-client and wayland-server.
Each protocol module contains a
client and a
server submodules, for each side of the
protocol. The creation of these modules (and the dependency on the associated crate) is
controlled by the two cargo features
The protocols provided in this crate are grouped in 3 main categories:
wpmodule contains general purpose wayland protocols
xdgmodule contains protocols specifically related to window management
extmodule contains protocols that do not fit into the two previous categories.
The cargo feature
staging enables the generation of the staging protocols.
These protocols are ready for wider adoption and clients and compositors are encouraged to implement staging protocol extensions where a protocol’s functionality is desired.
Although these protocols should be stable, the protocols may still be completely replaced in a new major version or with a completely different protocol.
wayland-protocols project previously had a notion of “unstable protocols” representing protocols
that are still being worked on and evolving. These protocols are recognized by the use of the prefix
in their interface names.
This category has now been deprecated and is no longer supposed to be used, however several protocols
are still under that umbrella. We can expect them to be replaced by staging and stable protocols in the
long term, but in the meantime you can enable them with the
unstable cargo feature.
Additionally, more protocol extensions are provided here: