Struct wayland_client::wayland::subcompositor::WlSubcompositor
[−]
[src]
pub struct WlSubcompositor { // some fields omitted }
sub-surface compositing
The global interface exposing sub-surface compositing capabilities. A wl_surface, that has sub-surfaces associated, is called the parent surface. Sub-surfaces can be arbitrarily nested and create a tree of sub-surfaces.
The root surface in a tree of sub-surfaces is the main surface. The main surface cannot be a sub-surface, because sub-surfaces must always have a parent.
A main surface with its sub-surfaces forms a (compound) window. For window management purposes, this set of wl_surface objects is to be considered as a single window, and it should also behave as such.
The aim of sub-surfaces is to offload some of the compositing work within a window from clients to the compositor. A prime example is a video player with decorations and video in separate wl_surface objects. This should allow the compositor to pass YUV video buffer processing to dedicated overlay hardware when possible.
Methods
impl WlSubcompositor
[src]
fn destroy(self)
unbind from the subcompositor interface
Informs the server that the client will not be using this protocol object anymore. This does not affect any other objects, wl_subsurface objects included.
fn get_subsurface(&self, surface: &WlSurface, parent: &WlSurface) -> WlSubsurface
give a surface the role sub-surface
Create a sub-surface interface for the given surface, and associate it with the given parent surface. This turns a plain wl_surface into a sub-surface.
The to-be sub-surface must not already have another role, and it must not have an existing wl_subsurface object. Otherwise a protocol error is raised.
Trait Implementations
impl Sync for WlSubcompositor
[src]
impl Send for WlSubcompositor
[src]
impl Proxy for WlSubcompositor
[src]
fn ptr(&self) -> *mut wl_proxy
fn interface() -> *mut wl_interface
fn interface_name() -> &'static str
The internal name of this interface, as advertized by the registry if it is a global.
fn version() -> u32
The maximum version of this interface handled by the library.
fn id(&self) -> ProxyId
Get the id of this proxy
unsafe fn from_ptr(ptr: *mut wl_proxy) -> WlSubcompositor
Creates a proxy from a fresh ptr
unsafe fn from_ptr_no_own(ptr: *mut wl_proxy) -> WlSubcompositor
Creates a proxy from a ptr that is managed elsewhere Read more
fn set_evt_iterator(&mut self, evt: &EventIterator)
Set the event iterator associated to this proxy
impl Debug for WlSubcompositor
[src]
fn fmt(&self, fmt: &mut Formatter) -> Result<(), Error>
Formats the value using the given formatter.