blitz_traits/
shell.rs

1use cursor_icon::CursorIcon;
2
3/// Type representing an error performing a clipboard operation
4/// TODO: fill out with meaningful errors
5pub struct ClipboardError;
6
7pub trait ShellProvider {
8    fn request_redraw(&self) {}
9    fn set_cursor(&self, icon: CursorIcon) {
10        let _ = icon;
11    }
12    fn set_window_title(&self, title: String) {
13        let _ = title;
14    }
15    fn get_clipboard_text(&self) -> Result<String, ClipboardError> {
16        Err(ClipboardError)
17    }
18    fn set_clipboard_text(&self, text: String) -> Result<(), ClipboardError> {
19        let _ = text;
20        Err(ClipboardError)
21    }
22}
23
24pub struct DummyShellProvider;
25impl ShellProvider for DummyShellProvider {}