The protocol includes several interfaces which are used for
interacting with the server. Each interface provides requests,
events, and errors (which are really just special events) as described
above. Specific compositor implementations may have their own
interfaces provided as extensions, but there are several which are
always expected to be present.
Core interfaces:
- wl_display: provides global functionality like objecting binding and fatal error events
- wl_callback: callback interface for dnoe events
- wl_compositor: core compositor interface, allows surface creation
- wl_shm: buffer management interface with buffer creation and format handling
- wl_buffer: buffer handling interface for indicating damage and object destruction, also provides buffer release events from the server
- wl_data_offer: for accepting and receiving specific mime types
- wl_data_source: for offering specific mime types
- wl_data_Device: lets clients manage drag & drop, provides pointer enter/leave events and motion
- wl_data_device_manager: for managing data sources and devices
- wl_shell: shell surface handling
- wl_shell_surface: shell surface handling and desktop-like events (e.g. set a surface to fullscreen, display a popup, etc.)
- wl_surface: surface management (destruction, damage, buffer attach, frame handling)
- wl_input_device: cursor setting, motion, button, and key events, etc.
- wl_output: events describing an attached output (subpixel orientation, current mode & geometry, etc.)
root
2012-01-26