diff --git a/OneMoreSetupActions/Deployments/EdgeWebViewDeployment.cs b/OneMoreSetupActions/Deployments/EdgeWebViewDeployment.cs index ea1365eda9..0409d14fa3 100644 --- a/OneMoreSetupActions/Deployments/EdgeWebViewDeployment.cs +++ b/OneMoreSetupActions/Deployments/EdgeWebViewDeployment.cs @@ -69,6 +69,9 @@ public override bool Install() logger.WriteLine(exc); } + // deprecate + CleanupChromium(); + return true; } @@ -132,7 +135,43 @@ public override bool Uninstall() logger.WriteLine("WebView client key not found in Registry"); } + // deprecate + CleanupChromium(); + return false; } + + + /// + /// Temporary action to clean up the chromium folder under AppData\Roaming\OneMore. + /// This method can be removed after a few release cycles. + /// + private void CleanupChromium() + { + var path = Path.Combine(Environment.GetEnvironmentVariable("APPDATA"), "OneMore"); + if (!Directory.Exists(path)) + { + return; + } + + var chrome = Directory.GetFiles(path, "chrome.exe", SearchOption.AllDirectories).FirstOrDefault(); + if (chrome == null) + { + return; + } + + try + { + var parent = Path.GetDirectoryName(Path.GetDirectoryName(chrome)); + logger.WriteLine($"cleaning up chromium {parent}"); + + Directory.Delete(parent, true); + } + catch (Exception exc) + { + logger.WriteLine("error cleaning up chromium"); + logger.WriteLine(exc); + } + } } }