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) -> WebviewAttributes
pub fn new(url: WebviewUrl) -> WebviewAttributes
Initializes the default attributes for a webview.
Sourcepub fn user_agent(self, user_agent: &str) -> WebviewAttributes
pub fn user_agent(self, user_agent: &str) -> WebviewAttributes
Sets the user agent
Sourcepub fn initialization_script(self, script: &str) -> WebviewAttributes
pub fn initialization_script(self, script: &str) -> WebviewAttributes
Sets the init script.
Sourcepub fn data_directory(self, data_directory: PathBuf) -> WebviewAttributes
pub fn data_directory(self, data_directory: PathBuf) -> WebviewAttributes
Data directory for the webview.
Sourcepub fn disable_drag_drop_handler(self) -> WebviewAttributes
pub fn disable_drag_drop_handler(self) -> WebviewAttributes
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) -> WebviewAttributes
pub fn enable_clipboard_access(self) -> WebviewAttributes
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) -> WebviewAttributes
pub fn accept_first_mouse(self, accept: bool) -> WebviewAttributes
Sets whether clicking an inactive window also clicks through to the webview.
Sourcepub fn additional_browser_args(self, additional_args: &str) -> WebviewAttributes
pub fn additional_browser_args(self, additional_args: &str) -> WebviewAttributes
Sets additional browser arguments. Windows Only
Sourcepub fn window_effects(self, effects: WindowEffectsConfig) -> WebviewAttributes
pub fn window_effects(self, effects: WindowEffectsConfig) -> WebviewAttributes
Sets window effects
Sourcepub fn incognito(self, incognito: bool) -> WebviewAttributes
pub fn incognito(self, incognito: bool) -> WebviewAttributes
Enable or disable incognito mode for the WebView.
Sourcepub fn transparent(self, transparent: bool) -> WebviewAttributes
pub fn transparent(self, transparent: bool) -> WebviewAttributes
Enable or disable transparency for the WebView.
Sourcepub fn focused(self, focus: bool) -> WebviewAttributes
pub fn focused(self, focus: bool) -> WebviewAttributes
Whether the webview should be focused or not.
Sourcepub fn auto_resize(self) -> WebviewAttributes
pub fn auto_resize(self) -> WebviewAttributes
Sets the webview to automatically grow and shrink its size and position when the parent window resizes.
Sourcepub fn proxy_url(self, url: Url) -> WebviewAttributes
pub fn proxy_url(self, url: Url) -> WebviewAttributes
Enable proxy for the WebView
Sourcepub fn zoom_hotkeys_enabled(self, enabled: bool) -> WebviewAttributes
pub fn zoom_hotkeys_enabled(self, enabled: bool) -> WebviewAttributes
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) -> WebviewAttributes
pub fn browser_extensions_enabled(self, enabled: bool) -> WebviewAttributes
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) -> WebviewAttributes
pub fn use_https_scheme(self, enabled: bool) -> WebviewAttributes
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>) -> WebviewAttributes
pub fn devtools(self, enabled: Option<bool>) -> WebviewAttributes
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) -> WebviewAttributes
pub fn background_color(self, color: Color) -> WebviewAttributes
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) -> WebviewAttributes
fn from(config: &WindowConfig) -> WebviewAttributes
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
)