pub struct WebviewAttributes {Show 20 fields
pub url: WebviewUrl,
pub user_agent: Option<String>,
pub initialization_scripts: Vec<String>,
pub data_directory: Option<PathBuf>,
pub drag_drop_handler_enabled: bool,
pub clipboard: bool,
pub accept_first_mouse: bool,
pub additional_browser_args: Option<String>,
pub window_effects: Option<WindowEffectsConfig>,
pub incognito: bool,
pub transparent: bool,
pub focus: bool,
pub bounds: Option<Rect>,
pub auto_resize: bool,
pub proxy_url: Option<Url>,
pub zoom_hotkeys_enabled: bool,
pub browser_extensions_enabled: bool,
pub use_https_scheme: bool,
pub devtools: Option<bool>,
pub background_color: Option<Color>,
}
Expand description
The attributes used to create an webview.
Fields§
§url: WebviewUrl
§user_agent: Option<String>
§initialization_scripts: Vec<String>
§data_directory: Option<PathBuf>
§drag_drop_handler_enabled: bool
§clipboard: bool
§accept_first_mouse: bool
§additional_browser_args: Option<String>
§window_effects: Option<WindowEffectsConfig>
§incognito: bool
§transparent: bool
§focus: bool
§bounds: Option<Rect>
§auto_resize: bool
§proxy_url: Option<Url>
§zoom_hotkeys_enabled: bool
§browser_extensions_enabled: bool
§use_https_scheme: bool
§devtools: Option<bool>
§background_color: Option<Color>
Implementations§
Source§impl WebviewAttributes
impl WebviewAttributes
Sourcepub fn new(url: WebviewUrl) -> Self
pub fn new(url: WebviewUrl) -> Self
Initializes the default attributes for a webview.
Sourcepub fn user_agent(self, user_agent: &str) -> Self
pub fn user_agent(self, user_agent: &str) -> Self
Sets the user agent
Sourcepub fn initialization_script(self, script: &str) -> Self
pub fn initialization_script(self, script: &str) -> Self
Sets the init script.
Sourcepub fn data_directory(self, data_directory: PathBuf) -> Self
pub fn data_directory(self, data_directory: PathBuf) -> Self
Data directory for the webview.
Sourcepub fn disable_drag_drop_handler(self) -> Self
pub fn disable_drag_drop_handler(self) -> Self
Disables the drag and drop handler. This is required to use HTML5 drag and drop APIs on the frontend on Windows.
Sourcepub fn enable_clipboard_access(self) -> Self
pub fn enable_clipboard_access(self) -> Self
Enables clipboard access for the page rendered on Linux and Windows.
macOS doesn’t provide such method and is always enabled by default, but you still need to add menu item accelerators to use shortcuts.
Sourcepub fn accept_first_mouse(self, accept: bool) -> Self
pub fn accept_first_mouse(self, accept: bool) -> Self
Sets whether clicking an inactive window also clicks through to the webview.
Sourcepub fn additional_browser_args(self, additional_args: &str) -> Self
pub fn additional_browser_args(self, additional_args: &str) -> Self
Sets additional browser arguments. Windows Only
Sourcepub fn window_effects(self, effects: WindowEffectsConfig) -> Self
pub fn window_effects(self, effects: WindowEffectsConfig) -> Self
Sets window effects
Sourcepub fn incognito(self, incognito: bool) -> Self
pub fn incognito(self, incognito: bool) -> Self
Enable or disable incognito mode for the WebView.
Sourcepub fn transparent(self, transparent: bool) -> Self
pub fn transparent(self, transparent: bool) -> Self
Enable or disable transparency for the WebView.
Sourcepub fn auto_resize(self) -> Self
pub fn auto_resize(self) -> Self
Sets the webview to automatically grow and shrink its size and position when the parent window resizes.
Sourcepub fn zoom_hotkeys_enabled(self, enabled: bool) -> Self
pub fn zoom_hotkeys_enabled(self, enabled: bool) -> Self
Whether page zooming by hotkeys is enabled
§Platform-specific:
-
Windows: Controls WebView2’s
IsZoomControlEnabled
setting. -
MacOS / Linux: Injects a polyfill that zooms in and out with
ctrl/command
+-/=
, 20% in each step, ranging from 20% to 1000%. Requireswebview:allow-set-webview-zoom
permission -
Android / iOS: Unsupported.
Sourcepub fn browser_extensions_enabled(self, enabled: bool) -> Self
pub fn browser_extensions_enabled(self, enabled: bool) -> Self
Whether browser extensions can be installed for the webview process
§Platform-specific:
- Windows: Enables the WebView2 environment’s
AreBrowserExtensionsEnabled
- MacOS / Linux / iOS / Android - Unsupported.
Sourcepub fn use_https_scheme(self, enabled: bool) -> Self
pub fn use_https_scheme(self, enabled: bool) -> Self
Sets whether the custom protocols should use https://<scheme>.localhost
instead of the default http://<scheme>.localhost
on Windows and Android. Defaults to false
.
§Note
Using a https
scheme will NOT allow mixed content when trying to fetch http
endpoints and therefore will not match the behavior of the <scheme>://localhost
protocols used on macOS and Linux.
§Warning
Changing this value between releases will change the IndexedDB, cookies and localstorage location and your app will not be able to access the old data.
Sourcepub fn devtools(self, enabled: Option<bool>) -> Self
pub fn devtools(self, enabled: Option<bool>) -> Self
Whether web inspector, which is usually called browser devtools, is enabled or not. Enabled by default.
This API works in debug builds, but requires devtools
feature flag to enable it in release builds.
§Platform-specific
- macOS: This will call private functions on macOS.
- Android: Open
chrome://inspect/#devices
in Chrome to get the devtools window. Wry’sWebView
devtools API isn’t supported on Android. - iOS: Open Safari > Develop > [Your Device Name] > [Your WebView] to get the devtools window.
Sourcepub fn background_color(self, color: Color) -> Self
pub fn background_color(self, color: Color) -> Self
Set the window and webview background color.
§Platform-specific:
- Windows: On Windows 7, alpha channel is ignored for the webview layer.
- Windows: On Windows 8 and newer, if alpha channel is not
0
, it will be ignored.
Trait Implementations§
Source§impl Clone for WebviewAttributes
impl Clone for WebviewAttributes
Source§fn clone(&self) -> WebviewAttributes
fn clone(&self) -> WebviewAttributes
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moreSource§impl Debug for WebviewAttributes
impl Debug for WebviewAttributes
Source§impl From<&WindowConfig> for WebviewAttributes
impl From<&WindowConfig> for WebviewAttributes
Source§fn from(config: &WindowConfig) -> Self
fn from(config: &WindowConfig) -> Self
Auto Trait Implementations§
impl Freeze for WebviewAttributes
impl RefUnwindSafe for WebviewAttributes
impl Send for WebviewAttributes
impl Sync for WebviewAttributes
impl Unpin for WebviewAttributes
impl UnwindSafe for WebviewAttributes
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit
)