diff --git a/crates/tauri-runtime-wry/src/lib.rs b/crates/tauri-runtime-wry/src/lib.rs index 9f4cd2534..52d9eb72e 100644 --- a/crates/tauri-runtime-wry/src/lib.rs +++ b/crates/tauri-runtime-wry/src/lib.rs @@ -1715,7 +1715,7 @@ impl WebviewDispatch for WryWebviewDispatcher { Message::Webview( *self.window_id.lock().unwrap(), self.webview_id, - WebviewMessage::DeleteCookie(cookie.clone().into_owned()), + WebviewMessage::DeleteCookie(cookie.into_owned()), ), )?; Ok(()) diff --git a/crates/tauri/src/webview/mod.rs b/crates/tauri/src/webview/mod.rs index 9d47f64d2..9d3f26f21 100644 --- a/crates/tauri/src/webview/mod.rs +++ b/crates/tauri/src/webview/mod.rs @@ -7,7 +7,6 @@ pub(crate) mod plugin; mod webview_window; -use cookie::Cookie; pub use webview_window::{WebviewWindow, WebviewWindowBuilder}; /// Cookie crate used for [`Webview::set_cookie`] and [`Webview::delete_cookie`]. @@ -20,6 +19,8 @@ use http::HeaderMap; use serde::Serialize; use tauri_macros::default_runtime; pub use tauri_runtime::webview::{NewWindowFeatures, PageLoadEvent}; +// Remove this re-export in v3 +pub use tauri_runtime::Cookie; #[cfg(desktop)] use tauri_runtime::{ dpi::{PhysicalPosition, PhysicalSize, Position, Size}, @@ -521,7 +522,7 @@ tauri::Builder::default() "opened-window", tauri::WebviewUrl::External("about:blank".parse().unwrap()), ) - .with_window_features(features) + .window_features(features) .on_document_title_changed(|window, title| { window.set_title(&title).unwrap(); }) diff --git a/crates/tauri/src/webview/webview_window.rs b/crates/tauri/src/webview/webview_window.rs index 48c0a26e0..bad5d41b4 100644 --- a/crates/tauri/src/webview/webview_window.rs +++ b/crates/tauri/src/webview/webview_window.rs @@ -297,7 +297,7 @@ impl<'a, R: Runtime, M: Manager> WebviewWindowBuilder<'a, R, M> { /// "opened-window", /// tauri::WebviewUrl::External("about:blank".parse().unwrap()), /// ) - /// .with_window_features(features) + /// .window_features(features) /// .on_document_title_changed(|window, title| { /// window.set_title(&title).unwrap(); /// }) @@ -1312,7 +1312,7 @@ impl> WebviewWindowBuilder<'_, R, M> { target_os = "netbsd", target_os = "openbsd" ))] - pub fn with_window_features(mut self, features: NewWindowFeatures) -> Self { + pub fn window_features(mut self, features: NewWindowFeatures) -> Self { if let Some(position) = features.position() { self.window_builder = self.window_builder.position(position.x, position.y); } diff --git a/examples/api/src-tauri/src/lib.rs b/examples/api/src-tauri/src/lib.rs index 53075a601..73a573672 100644 --- a/examples/api/src-tauri/src/lib.rs +++ b/examples/api/src-tauri/src/lib.rs @@ -8,8 +8,6 @@ mod menu_plugin; #[cfg(desktop)] mod tray; -use std::sync::atomic::AtomicUsize; - use serde::Serialize; use tauri::{ ipc::Channel, @@ -68,40 +66,40 @@ pub fn run_app) + Send + 'static>( .build()?, )); - let app_ = app.handle().clone(); - - let mut created_window_count = AtomicUsize::new(0); let mut window_builder = WebviewWindowBuilder::new(app, "main", WebviewUrl::default()) - .on_new_window(move |url, features| { - println!("new window requested: {url:?} {features:?}"); - - let number = created_window_count.fetch_add(1, std::sync::atomic::Ordering::Relaxed); - - let builder = tauri::WebviewWindowBuilder::new( - &app_, - format!("new-{number}"), - tauri::WebviewUrl::External("about:blank".parse().unwrap()), - ) - .with_window_features(features) - .on_document_title_changed(|window, title| { - window.set_title(&title).unwrap(); - }) - .title(url.as_str()); - - let window = builder.build().unwrap(); - tauri::webview::NewWindowResponse::Create { window } - }) .on_document_title_changed(|_window, title| { println!("document title changed: {title}"); }); #[cfg(all(desktop, not(test)))] { + let app_ = app.handle().clone(); + let mut created_window_count = std::sync::atomic::AtomicUsize::new(0); + window_builder = window_builder .title("Tauri API Validation") .inner_size(1000., 800.) .min_inner_size(600., 400.) - .menu(tauri::menu::Menu::default(app.handle())?); + .menu(tauri::menu::Menu::default(app.handle())?) + .on_new_window(move |url, features| { + println!("new window requested: {url:?} {features:?}"); + + let number = created_window_count.fetch_add(1, std::sync::atomic::Ordering::Relaxed); + + let builder = tauri::WebviewWindowBuilder::new( + &app_, + format!("new-{number}"), + tauri::WebviewUrl::External("about:blank".parse().unwrap()), + ) + .window_features(features) + .on_document_title_changed(|window, title| { + window.set_title(&title).unwrap(); + }) + .title(url.as_str()); + + let window = builder.build().unwrap(); + tauri::webview::NewWindowResponse::Create { window } + }); } let webview = window_builder.build()?;