pub trait CompositorHandler: Sized {
// Required methods
fn scale_factor_changed(
&mut self,
conn: &Connection,
qh: &QueueHandle<Self>,
surface: &WlSurface,
new_factor: i32,
);
fn transform_changed(
&mut self,
conn: &Connection,
qh: &QueueHandle<Self>,
surface: &WlSurface,
new_transform: Transform,
);
fn frame(
&mut self,
conn: &Connection,
qh: &QueueHandle<Self>,
surface: &WlSurface,
time: u32,
);
fn surface_enter(
&mut self,
conn: &Connection,
qh: &QueueHandle<Self>,
surface: &WlSurface,
output: &WlOutput,
);
fn surface_leave(
&mut self,
conn: &Connection,
qh: &QueueHandle<Self>,
surface: &WlSurface,
output: &WlOutput,
);
}Required Methods§
Sourcefn scale_factor_changed(
&mut self,
conn: &Connection,
qh: &QueueHandle<Self>,
surface: &WlSurface,
new_factor: i32,
)
fn scale_factor_changed( &mut self, conn: &Connection, qh: &QueueHandle<Self>, surface: &WlSurface, new_factor: i32, )
The surface has either been moved into or out of an output and the output has a different scale factor.
Sourcefn transform_changed(
&mut self,
conn: &Connection,
qh: &QueueHandle<Self>,
surface: &WlSurface,
new_transform: Transform,
)
fn transform_changed( &mut self, conn: &Connection, qh: &QueueHandle<Self>, surface: &WlSurface, new_transform: Transform, )
The surface has either been moved into or out of an output and the output has different transform.
Sourcefn frame(
&mut self,
conn: &Connection,
qh: &QueueHandle<Self>,
surface: &WlSurface,
time: u32,
)
fn frame( &mut self, conn: &Connection, qh: &QueueHandle<Self>, surface: &WlSurface, time: u32, )
A frame callback has been completed.
Frame callbacks are used to avoid updating surfaces that are not currently visible. If a
frame callback is requested prior to committing a surface, the client should avoid drawing
to that surface until the callback completes. See the
WlSurface::frame request for more details.
This function will be called if you request a frame callback by passing the surface itself
as the userdata (surface.frame(&queue, &surface)); you can also implement Dispatch
for other values to more easily dispatch rendering for specific surface types.
Sourcefn surface_enter(
&mut self,
conn: &Connection,
qh: &QueueHandle<Self>,
surface: &WlSurface,
output: &WlOutput,
)
fn surface_enter( &mut self, conn: &Connection, qh: &QueueHandle<Self>, surface: &WlSurface, output: &WlOutput, )
The surface has entered an output.
Sourcefn surface_leave(
&mut self,
conn: &Connection,
qh: &QueueHandle<Self>,
surface: &WlSurface,
output: &WlOutput,
)
fn surface_leave( &mut self, conn: &Connection, qh: &QueueHandle<Self>, surface: &WlSurface, output: &WlOutput, )
The surface has left an output.
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".