|
@@ -1239,6 +1239,7 @@ pub enum WebviewMessage {
|
|
|
Reparent(WindowId, Sender<Result<()>>),
|
|
|
SetAutoResize(bool),
|
|
|
SetZoom(f64),
|
|
|
+ ClearAllBrowsingData,
|
|
|
// Getters
|
|
|
Url(Sender<Result<String>>),
|
|
|
Bounds(Sender<Result<tauri_runtime::Rect>>),
|
|
@@ -1516,6 +1517,17 @@ impl<T: UserEvent> WebviewDispatch<T> for WryWebviewDispatcher<T> {
|
|
|
),
|
|
|
)
|
|
|
}
|
|
|
+
|
|
|
+ fn clear_all_browsing_data(&self) -> Result<()> {
|
|
|
+ send_user_message(
|
|
|
+ &self.context,
|
|
|
+ Message::Webview(
|
|
|
+ *self.window_id.lock().unwrap(),
|
|
|
+ self.webview_id,
|
|
|
+ WebviewMessage::ClearAllBrowsingData,
|
|
|
+ ),
|
|
|
+ )
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
/// The Tauri [`WindowDispatch`] for [`Wry`].
|
|
@@ -3157,6 +3169,11 @@ fn handle_user_message<T: UserEvent>(
|
|
|
log::error!("failed to set webview zoom: {e}");
|
|
|
}
|
|
|
}
|
|
|
+ WebviewMessage::ClearAllBrowsingData => {
|
|
|
+ if let Err(e) = webview.clear_all_browsing_data() {
|
|
|
+ log::error!("failed to clear webview browsing data: {e}");
|
|
|
+ }
|
|
|
+ }
|
|
|
// Getters
|
|
|
WebviewMessage::Url(tx) => {
|
|
|
tx.send(
|