Struct tauri_utils::config::WindowConfig  
source · pub struct WindowConfig {Show 40 fields
    pub label: String,
    pub url: WebviewUrl,
    pub user_agent: Option<String>,
    pub file_drop_enabled: bool,
    pub center: bool,
    pub x: Option<f64>,
    pub y: Option<f64>,
    pub width: f64,
    pub height: f64,
    pub min_width: Option<f64>,
    pub min_height: Option<f64>,
    pub max_width: Option<f64>,
    pub max_height: Option<f64>,
    pub resizable: bool,
    pub maximizable: bool,
    pub minimizable: bool,
    pub closable: bool,
    pub title: String,
    pub fullscreen: bool,
    pub focus: bool,
    pub transparent: bool,
    pub maximized: bool,
    pub visible: bool,
    pub decorations: bool,
    pub always_on_bottom: bool,
    pub always_on_top: bool,
    pub visible_on_all_workspaces: bool,
    pub content_protected: bool,
    pub skip_taskbar: bool,
    pub theme: Option<Theme>,
    pub title_bar_style: TitleBarStyle,
    pub hidden_title: bool,
    pub accept_first_mouse: bool,
    pub tabbing_identifier: Option<String>,
    pub additional_browser_args: Option<String>,
    pub shadow: bool,
    pub window_effects: Option<WindowEffectsConfig>,
    pub incognito: bool,
    pub parent: Option<String>,
    pub proxy_url: Option<Url>,
}Expand description
The window configuration object.
Fields§
§label: StringThe window identifier. It must be alphanumeric.
url: WebviewUrlThe window webview URL.
user_agent: Option<String>The user agent for the webview
file_drop_enabled: boolWhether the file drop is enabled or not on the webview. By default it is enabled.
Disabling it is required to use drag and drop on the frontend on Windows.
center: boolWhether or not the window starts centered or not.
x: Option<f64>The horizontal position of the window’s top left corner
y: Option<f64>The vertical position of the window’s top left corner
width: f64The window width.
height: f64The window height.
min_width: Option<f64>The min window width.
min_height: Option<f64>The min window height.
max_width: Option<f64>The max window width.
max_height: Option<f64>The max window height.
resizable: boolWhether the window is resizable or not. When resizable is set to false, native window’s maximize button is automatically disabled.
maximizable: boolWhether the window’s native maximize button is enabled or not. If resizable is set to false, this setting is ignored.
§Platform-specific
- macOS: Disables the “zoom” button in the window titlebar, which is also used to enter fullscreen mode.
- Linux / iOS / Android: Unsupported.
minimizable: boolWhether the window’s native minimize button is enabled or not.
§Platform-specific
- Linux / iOS / Android: Unsupported.
closable: boolWhether the window’s native close button is enabled or not.
§Platform-specific
- Linux: “GTK+ will do its best to convince the window manager not to show a close button. Depending on the system, this function may not have any effect when called on a window that is already visible”
- iOS / Android: Unsupported.
title: StringThe window title.
fullscreen: boolWhether the window starts as fullscreen or not.
focus: boolWhether the window will be initially focused or not.
transparent: boolWhether the window is transparent or not.
Note that on macOS this requires the macos-private-api feature flag, enabled under tauri > macOSPrivateApi.
WARNING: Using private APIs on macOS prevents your application from being accepted to the App Store.
maximized: boolWhether the window is maximized or not.
visible: boolWhether the window is visible or not.
decorations: boolWhether the window should have borders and bars.
always_on_bottom: boolWhether the window should always be below other windows.
always_on_top: boolWhether the window should always be on top of other windows.
visible_on_all_workspaces: boolWhether the window should be visible on all workspaces or virtual desktops.
§Platform-specific
- Windows / iOS / Android: Unsupported.
content_protected: boolPrevents the window contents from being captured by other apps.
skip_taskbar: boolIf true, hides the window icon from the taskbar on Windows and Linux.
theme: Option<Theme>The initial window theme. Defaults to the system theme. Only implemented on Windows and macOS 10.14+.
title_bar_style: TitleBarStyleThe style of the macOS title bar.
If true, sets the window title to be hidden on macOS.
accept_first_mouse: boolWhether clicking an inactive window also clicks through to the webview on macOS.
tabbing_identifier: Option<String>Defines the window tabbing identifier for macOS.
Windows with matching tabbing identifiers will be grouped together. If the tabbing identifier is not set, automatic tabbing will be disabled.
additional_browser_args: Option<String>Defines additional browser arguments on Windows. By default wry passes --disable-features=msWebOOUI,msPdfOOUI,msSmartScreenProtection
so if you use this method, you also need to disable these components by yourself if you want.
shadow: boolWhether or not the window has shadow.
§Platform-specific
- Windows:
- falsehas no effect on decorated window, shadow are always ON.
- truewill make ndecorated window have a 1px white border, and on Windows 11, it will have a rounded corners.
 
- Linux: Unsupported.
window_effects: Option<WindowEffectsConfig>Window effects.
Requires the window to be transparent.
§Platform-specific:
- Windows: If using decorations or shadows, you may want to try this workaround https://github.com/tauri-apps/tao/issues/72#issuecomment-975607891
- Linux: Unsupported
incognito: boolWhether or not the webview should be launched in incognito mode.
§Platform-specific:
- Android: Unsupported.
parent: Option<String>Sets the window associated with this label to be the parent of the window to be created.
§Platform-specific
- Windows: This sets the passed parent as an owner window to the window to be created.
From MSDN owned windows docs:
- An owned window is always above its owner in the z-order.
- The system automatically destroys an owned window when its owner is destroyed.
- An owned window is hidden when its owner is minimized.
 
- Linux: This makes the new window transient for parent, see https://docs.gtk.org/gtk3/method.Window.set_transient_for.html
- macOS: This adds the window as a child of parent, see https://developer.apple.com/documentation/appkit/nswindow/1419152-addchildwindow?language=objc
proxy_url: Option<Url>The proxy URL for the WebView for all network requests.
Must be either a http:// or a socks5:// URL.
§Platform-specific
- macOS: Requires the macos-proxyfeature flag and only compiles for macOS 14+.
Trait Implementations§
source§impl Clone for WindowConfig
 
impl Clone for WindowConfig
source§fn clone(&self) -> WindowConfig
 
fn clone(&self) -> WindowConfig
1.0.0 · source§fn clone_from(&mut self, source: &Self)
 
fn clone_from(&mut self, source: &Self)
source. Read moresource§impl Debug for WindowConfig
 
impl Debug for WindowConfig
source§impl Default for WindowConfig
 
impl Default for WindowConfig
source§impl<'de> Deserialize<'de> for WindowConfig
 
impl<'de> Deserialize<'de> for WindowConfig
source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
    __D: Deserializer<'de>,
 
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
    __D: Deserializer<'de>,
source§impl PartialEq for WindowConfig
 
impl PartialEq for WindowConfig
source§fn eq(&self, other: &WindowConfig) -> bool
 
fn eq(&self, other: &WindowConfig) -> bool
self and other values to be equal, and is used
by ==.