This example demonstrates how to use subsurfaces for adding client side window decorations to a Wayland surface. The shell interfaces wl_shell
and xdg_wm_base
are supported, whereas xdg_wm_base
is selected by default if available.
The window decoration consists of:
- window boarders for resizing
- tragbar for moving the window
- buttons for closing, maximising and minimising
Build dependencies:
sudo apt install libwayland-dev libegl1-mesa-dev wayland-protocols libwayland-bin extra-cmake-modules
cmake CMakeLists.txt && make