pub trait Runtime<T: UserEvent>: Debug + Sized + 'static {
    type Dispatcher: Dispatch<T, Runtime = Self>;
    type Handle: RuntimeHandle<T, Runtime = Self>;
    type GlobalShortcutManager: GlobalShortcutManager;
    type ClipboardManager: ClipboardManager;
    type TrayHandler: TrayHandle;
    type EventLoopProxy: EventLoopProxy<T>;

    // Required methods
    fn new() -> Result<Self>;
    fn new_any_thread() -> Result<Self>;
    fn create_proxy(&self) -> Self::EventLoopProxy;
    fn handle(&self) -> Self::Handle;
    fn global_shortcut_manager(&self) -> Self::GlobalShortcutManager;
    fn clipboard_manager(&self) -> Self::ClipboardManager;
    fn create_window(
        &self,
        pending: PendingWindow<T, Self>
    ) -> Result<DetachedWindow<T, Self>>;
    fn system_tray(&self, system_tray: SystemTray) -> Result<Self::TrayHandler>;
    fn on_system_tray_event<F: Fn(TrayId, &SystemTrayEvent) + Send + 'static>(
        &mut self,
        f: F
    );
    fn run_iteration<F: Fn(RunEvent<T>) + 'static>(
        &mut self,
        callback: F
    ) -> RunIteration;
    fn run<F: FnMut(RunEvent<T>) + 'static>(self, callback: F);
}
Expand description

The webview runtime interface.

Required Associated Types§

source

type Dispatcher: Dispatch<T, Runtime = Self>

The message dispatcher.

source

type Handle: RuntimeHandle<T, Runtime = Self>

The runtime handle type.

source

type GlobalShortcutManager: GlobalShortcutManager

The global shortcut manager type.

source

type ClipboardManager: ClipboardManager

The clipboard manager type.

source

type TrayHandler: TrayHandle

The tray handler type.

source

type EventLoopProxy: EventLoopProxy<T>

The proxy type.

Required Methods§

source

fn new() -> Result<Self>

Creates a new webview runtime. Must be used on the main thread.

source

fn new_any_thread() -> Result<Self>

Available on Windows or Linux only.

Creates a new webview runtime on any thread.

source

fn create_proxy(&self) -> Self::EventLoopProxy

Creates an EventLoopProxy that can be used to dispatch user events to the main event loop.

source

fn handle(&self) -> Self::Handle

Gets a runtime handle.

source

fn global_shortcut_manager(&self) -> Self::GlobalShortcutManager

Gets the global shortcut manager.

source

fn clipboard_manager(&self) -> Self::ClipboardManager

Gets the clipboard manager.

source

fn create_window( &self, pending: PendingWindow<T, Self> ) -> Result<DetachedWindow<T, Self>>

Create a new webview window.

source

fn system_tray(&self, system_tray: SystemTray) -> Result<Self::TrayHandler>

Available on crate feature system-tray only.

Adds the icon to the system tray with the specified menu items.

source

fn on_system_tray_event<F: Fn(TrayId, &SystemTrayEvent) + Send + 'static>( &mut self, f: F )

Available on crate feature system-tray only.

Registers a system tray event handler.

source

fn run_iteration<F: Fn(RunEvent<T>) + 'static>( &mut self, callback: F ) -> RunIteration

Runs the one step of the webview runtime event loop and returns control flow to the caller.

source

fn run<F: FnMut(RunEvent<T>) + 'static>(self, callback: F)

Run the webview runtime.

Implementors§