Skip to main content

WebviewBridge

Trait WebviewBridge 

Source
pub trait WebviewBridge: Send + Sync {
Show 13 methods // Required methods fn eval_webview( &self, label: Option<&str>, script: &str, ) -> Result<(), String>; fn get_window_states(&self, label: Option<&str>) -> Vec<WindowState>; fn list_window_labels(&self) -> Vec<String>; fn get_native_handle(&self, label: Option<&str>) -> Result<isize, String>; fn manage_window( &self, label: Option<&str>, action: &str, ) -> Result<String, String>; fn resize_window( &self, label: Option<&str>, width: u32, height: u32, ) -> Result<(), String>; fn move_window( &self, label: Option<&str>, x: i32, y: i32, ) -> Result<(), String>; fn set_window_title( &self, label: Option<&str>, title: &str, ) -> Result<(), String>; // Provided methods fn app_data_dir(&self) -> Result<PathBuf, String> { ... } fn app_config_dir(&self) -> Result<PathBuf, String> { ... } fn app_log_dir(&self) -> Result<PathBuf, String> { ... } fn app_local_data_dir(&self) -> Result<PathBuf, String> { ... } fn tauri_config(&self) -> Value { ... }
}
Expand description

Runtime-erased interface for webview and backend access, allowing the MCP server to interact with Tauri windows and the application backend without generic parameters.

Required Methods§

Source

fn eval_webview(&self, label: Option<&str>, script: &str) -> Result<(), String>

Execute JavaScript in the target webview (defaults to “main” or first visible window).

§Errors

Returns an error string if no matching window is found or the eval fails.

Source

fn get_window_states(&self, label: Option<&str>) -> Vec<WindowState>

Retrieve the state of one or all windows (position, size, visibility, focus, URL).

Source

fn list_window_labels(&self) -> Vec<String>

Return the labels of all open webview windows.

Source

fn get_native_handle(&self, label: Option<&str>) -> Result<isize, String>

Return the platform-native window handle for screenshot capture. Windows: HWND, macOS: CGWindowID (window number), Linux: X11 window ID.

§Errors

Returns an error string if no matching window is found or the handle type is unsupported.

Source

fn manage_window( &self, label: Option<&str>, action: &str, ) -> Result<String, String>

Perform a window management action (minimize, maximize, close, show, hide, etc.).

§Errors

Returns an error string if no matching window is found or the action fails.

Source

fn resize_window( &self, label: Option<&str>, width: u32, height: u32, ) -> Result<(), String>

Set the logical size of a window in device-independent pixels.

§Errors

Returns an error string if no matching window is found or the resize fails.

Source

fn move_window(&self, label: Option<&str>, x: i32, y: i32) -> Result<(), String>

Set the logical position of a window in device-independent pixels.

§Errors

Returns an error string if no matching window is found or the move fails.

Source

fn set_window_title( &self, label: Option<&str>, title: &str, ) -> Result<(), String>

Set the title bar text of a window.

§Errors

Returns an error string if no matching window is found or the title change fails.

Provided Methods§

Source

fn app_data_dir(&self) -> Result<PathBuf, String>

Return the app’s per-user data directory (e.g. ~/.local/share/<app>/).

§Errors

Returns an error if the path cannot be resolved.

Source

fn app_config_dir(&self) -> Result<PathBuf, String>

Return the app’s per-user config directory (e.g. ~/.config/<app>/).

§Errors

Returns an error if the path cannot be resolved.

Source

fn app_log_dir(&self) -> Result<PathBuf, String>

Return the app’s log directory.

§Errors

Returns an error if the path cannot be resolved.

Source

fn app_local_data_dir(&self) -> Result<PathBuf, String>

Return the app’s local data directory.

§Errors

Returns an error if the path cannot be resolved.

Source

fn tauri_config(&self) -> Value

Return the Tauri app configuration as JSON.

Dyn Compatibility§

This trait is dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementations on Foreign Types§

Source§

impl<R: Runtime> WebviewBridge for AppHandle<R>

Source§

fn eval_webview(&self, label: Option<&str>, script: &str) -> Result<(), String>

Source§

fn get_window_states(&self, label: Option<&str>) -> Vec<WindowState>

Source§

fn list_window_labels(&self) -> Vec<String>

Source§

fn get_native_handle(&self, label: Option<&str>) -> Result<isize, String>

Source§

fn manage_window( &self, label: Option<&str>, action: &str, ) -> Result<String, String>

Source§

fn resize_window( &self, label: Option<&str>, width: u32, height: u32, ) -> Result<(), String>

Source§

fn move_window(&self, label: Option<&str>, x: i32, y: i32) -> Result<(), String>

Source§

fn set_window_title( &self, label: Option<&str>, title: &str, ) -> Result<(), String>

Source§

fn app_data_dir(&self) -> Result<PathBuf, String>

Source§

fn app_config_dir(&self) -> Result<PathBuf, String>

Source§

fn app_log_dir(&self) -> Result<PathBuf, String>

Source§

fn app_local_data_dir(&self) -> Result<PathBuf, String>

Source§

fn tauri_config(&self) -> Value

Implementors§