From 8c38133c5f57b427c4abc56683ae73b1cc3b400c Mon Sep 17 00:00:00 2001 From: Frank Becker Date: Wed, 19 Feb 2025 23:35:51 +0000 Subject: [PATCH] Remove extra logging. Only clear browsing data after first preview is closed. --- WebpagePanel.cs | 38 ++++++++++++++++++++++---------------- 1 file changed, 22 insertions(+), 16 deletions(-) diff --git a/WebpagePanel.cs b/WebpagePanel.cs index 756058c..3b2deaa 100644 --- a/WebpagePanel.cs +++ b/WebpagePanel.cs @@ -58,6 +58,7 @@ public class WebpagePanel : UserControl private FileInfo _activeFileInfo = null; private CoreWebView2Environment _webViewEnvironment; private bool DetectEncoding = false; + private static bool firstPreview = true; public WebpagePanel() { @@ -257,19 +258,6 @@ private void CoreWebView2InitializationCompleted(object sender, EventArgs e) _webView.CoreWebView2.FrameNavigationStarting += FrameNavigationStarting; _webView.CoreWebView2.Settings.AreDefaultScriptDialogsEnabled = false; _webView.CoreWebView2.Settings.AreHostObjectsAllowed = false; - _webView.CoreWebView2.Profile.ClearBrowsingDataAsync( - CoreWebView2BrowsingDataKinds.FileSystems | - CoreWebView2BrowsingDataKinds.IndexedDb | - // keep local storage - CoreWebView2BrowsingDataKinds.WebSql | - CoreWebView2BrowsingDataKinds.CacheStorage | - CoreWebView2BrowsingDataKinds.Cookies | - CoreWebView2BrowsingDataKinds.DiskCache | - CoreWebView2BrowsingDataKinds.DownloadHistory | - CoreWebView2BrowsingDataKinds.GeneralAutofill | - CoreWebView2BrowsingDataKinds.PasswordAutosave | - CoreWebView2BrowsingDataKinds.Settings - ); // 3 places to get web app: // 1. a url via WebAppUrl (e.g. locally hosted vite dev version of app) @@ -281,7 +269,7 @@ private void CoreWebView2InitializationCompleted(object sender, EventArgs e) var webAppUrl = SettingHelper.Get("WebAppUrl", null, "QuickLook.Plugin.WebViewPlus"); if (webAppUrl != null) { - ProcessHelper.WriteLog($"QuickLook.Plugin.WebViewPlus using app via custom url: {webAppUrl}"); + // ProcessHelper.WriteLog($"QuickLook.Plugin.WebViewPlus using app via custom url: {webAppUrl}"); uri = new Uri(webAppUrl); } else @@ -289,12 +277,12 @@ private void CoreWebView2InitializationCompleted(object sender, EventArgs e) // map webviewplus folder to a private virtual hostname if (File.Exists(Path.Combine(webAppInConfigFolder, "index.html"))) { - ProcessHelper.WriteLog("QuickLook.Plugin.WebViewPlus using app from config"); + // ProcessHelper.WriteLog("QuickLook.Plugin.WebViewPlus using app from config"); _webView.CoreWebView2.SetVirtualHostNameToFolderMapping("webviewplus.mooflu.com", webAppInConfigFolder, CoreWebView2HostResourceAccessKind.Allow); } else if(File.Exists(Path.Combine(webAppInBundledFolder, "index.html"))) { - ProcessHelper.WriteLog("QuickLook.Plugin.WebViewPlus using app from plugin"); + // ProcessHelper.WriteLog("QuickLook.Plugin.WebViewPlus using app from plugin"); _webView.CoreWebView2.SetVirtualHostNameToFolderMapping("webviewplus.mooflu.com", webAppInBundledFolder, CoreWebView2HostResourceAccessKind.Allow); } } @@ -343,6 +331,24 @@ public void UnloadData() public void Dispose() { + if (firstPreview) + { + firstPreview = false; + _webView.CoreWebView2.Profile.ClearBrowsingDataAsync( + CoreWebView2BrowsingDataKinds.FileSystems | + CoreWebView2BrowsingDataKinds.IndexedDb | + // keep local storage + CoreWebView2BrowsingDataKinds.WebSql | + CoreWebView2BrowsingDataKinds.CacheStorage | + CoreWebView2BrowsingDataKinds.Cookies | + CoreWebView2BrowsingDataKinds.DiskCache | + CoreWebView2BrowsingDataKinds.DownloadHistory | + CoreWebView2BrowsingDataKinds.GeneralAutofill | + CoreWebView2BrowsingDataKinds.PasswordAutosave | + CoreWebView2BrowsingDataKinds.Settings + ); + } + _activeFileInfo = null; _sharedBuffer?.Dispose(); _sharedBuffer = null;