pub trait ScreencopyHandler: Sized {
// Required methods
fn screencopy_state(&mut self) -> &mut ScreencopyState;
fn init_done(
&mut self,
conn: &Connection,
qh: &QueueHandle<Self>,
session: &CaptureSession,
formats: &Formats,
);
fn stopped(
&mut self,
conn: &Connection,
qh: &QueueHandle<Self>,
session: &CaptureSession,
);
fn ready(
&mut self,
conn: &Connection,
qh: &QueueHandle<Self>,
screencopy_frame: &CaptureFrame,
frame: Frame,
);
fn failed(
&mut self,
conn: &Connection,
qh: &QueueHandle<Self>,
screencopy_frame: &CaptureFrame,
reason: WEnum<FailureReason>,
);
// Provided methods
fn cursor_enter(
&mut self,
_conn: &Connection,
_qh: &QueueHandle<Self>,
_cursor_session: &CaptureCursorSession,
) { ... }
fn cursor_leave(
&mut self,
_conn: &Connection,
_qh: &QueueHandle<Self>,
_cursor_session: &CaptureCursorSession,
) { ... }
fn cursor_position(
&mut self,
_conn: &Connection,
_qh: &QueueHandle<Self>,
_cursor_session: &CaptureCursorSession,
_x: i32,
_y: i32,
) { ... }
fn cursor_hotspot(
&mut self,
_conn: &Connection,
_qh: &QueueHandle<Self>,
_cursor_session: &CaptureCursorSession,
_x: i32,
_y: i32,
) { ... }
}Available on crate feature
wayland and Linux only.Required Methods§
fn screencopy_state(&mut self) -> &mut ScreencopyState
fn init_done( &mut self, conn: &Connection, qh: &QueueHandle<Self>, session: &CaptureSession, formats: &Formats, )
fn stopped( &mut self, conn: &Connection, qh: &QueueHandle<Self>, session: &CaptureSession, )
fn ready( &mut self, conn: &Connection, qh: &QueueHandle<Self>, screencopy_frame: &CaptureFrame, frame: Frame, )
fn failed( &mut self, conn: &Connection, qh: &QueueHandle<Self>, screencopy_frame: &CaptureFrame, reason: WEnum<FailureReason>, )
Provided Methods§
fn cursor_enter( &mut self, _conn: &Connection, _qh: &QueueHandle<Self>, _cursor_session: &CaptureCursorSession, )
fn cursor_leave( &mut self, _conn: &Connection, _qh: &QueueHandle<Self>, _cursor_session: &CaptureCursorSession, )
fn cursor_position( &mut self, _conn: &Connection, _qh: &QueueHandle<Self>, _cursor_session: &CaptureCursorSession, _x: i32, _y: i32, )
fn cursor_hotspot( &mut self, _conn: &Connection, _qh: &QueueHandle<Self>, _cursor_session: &CaptureCursorSession, _x: i32, _y: i32, )
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.