Ada 2012 bindings and tools for Wayland (client).
The following Alire crates exist:
-
wayland_ada_scanner. A tool to generate thick bindings for various Wayland protocols.
-
wayland_ada_info. A tool to display information about interfaces advertised by the currently running Wayland compositor.
-
wayland_client_ada. Thick bindings for the core Wayland protocol. Additionally provides thin bindings for libwayland-client to be used by this crate and wayland_protocols_ada.
-
wayland_protocols_ada. Thick bindings for various stable and unstable protocols (see below) from the wayland-protocols project.
-
wayland_egl_ada. Bindings for libwayland-egl.
-
wayland_cursor_ada. Bindings for libwayland-cursor.
The following stable protocols are supported:
-
xdg-shell (This protocol replaces the wl_shell and wl_shell_surface interfaces)
-
presentation-time
-
viewporter
And the following unstable protocols:
-
idle-inhibit
-
xdg-decoration
-
pointer-constraints
-
pointer-gestures
-
relative-pointer
These crates and Wayland protocols are used by [Orka][url-orka], a game engine which includes a window toolkit that takes care of window management, locking and animating the pointer cursor, and handling input devices.
Build and run the wayland_ada_info crate with Alire or by running make info
to display information about Wayland interfaces.
Requires Wayland 1.18 or higher.
The scanner requires wayland-protocols 1.26
to generate the Ada bindings.
This project has been vendorized using git subtree add
and can be found in
the wayland_protocols_ada/wayland-protocols/ folder.
The core protocol uses wayland.xml of Wayland 1.21.0 and
has been vendorized as well.
Much thanks to @joakim-strandberg for starting this project and writing most of the wayland scanner.
Please read the contributing guidelines before opening issues or pull requests.
wayland-ada is distributed under the terms of the Apache License 2.0.
The XML files found in the wayland_protocols_ada/wayland-protocols/ folder (vendorized from tag 1.26 of the wayland-protocols project) are licensed under the MIT license.
The XML file wayland_client_ada/protocol/wayland.xml (vendorized from tag 1.21.0 of wayland project) is licensed under the MIT license.