pub trait DisplayServer {
    // Required methods
    fn new(config: &impl Config) -> Self;
    fn get_next_events(&mut self) -> Vec<DisplayEvent>;
    fn wait_readable(&self) -> Pin<Box<dyn Future<Output = ()>>>;
    fn flush(&self);
    fn generate_verify_focus_event(&self) -> Option<DisplayEvent>;

    // Provided methods
    fn load_config(
        &mut self,
        _config: &impl Config,
        _focused: Option<&Option<WindowHandle>>,
        _windows: &[Window]
    ) { ... }
    fn update_windows(&self, _windows: Vec<&Window>) { ... }
    fn update_workspaces(&self, _focused: Option<&Workspace>) { ... }
    fn execute_action(&mut self, _act: DisplayAction) -> Option<DisplayEvent> { ... }
}

Required Methods§

source

fn new(config: &impl Config) -> Self

source

fn get_next_events(&mut self) -> Vec<DisplayEvent>

source

fn wait_readable(&self) -> Pin<Box<dyn Future<Output = ()>>>

source

fn flush(&self)

source

fn generate_verify_focus_event(&self) -> Option<DisplayEvent>

Provided Methods§

source

fn load_config( &mut self, _config: &impl Config, _focused: Option<&Option<WindowHandle>>, _windows: &[Window] )

source

fn update_windows(&self, _windows: Vec<&Window>)

source

fn update_workspaces(&self, _focused: Option<&Workspace>)

source

fn execute_action(&mut self, _act: DisplayAction) -> Option<DisplayEvent>

Object Safety§

This trait is not object safe.

Implementors§