From 415843f6f4941b3ab3dade189385fae89f83a39e Mon Sep 17 00:00:00 2001 From: Stefan Markovic <57057282+stefansjfw@users.noreply.github.com> Date: Wed, 13 Dec 2023 11:12:31 +0100 Subject: [PATCH] Add --disable-features=RendererAppContainer WebView2Environment option (#30412) --- .../MarkdownPreviewHandlerControl.cs | 2 +- .../MonacoPreviewHandler/MonacoPreviewHandlerControl.cs | 7 +++++-- .../previewpane/SvgPreviewHandler/SvgPreviewControl.cs | 2 +- .../SvgThumbnailProvider/SvgThumbnailProvider.cs | 2 +- 4 files changed, 8 insertions(+), 5 deletions(-) diff --git a/src/modules/previewpane/MarkdownPreviewHandler/MarkdownPreviewHandlerControl.cs b/src/modules/previewpane/MarkdownPreviewHandler/MarkdownPreviewHandlerControl.cs index 06c5c4af3c..01f90c5b2d 100644 --- a/src/modules/previewpane/MarkdownPreviewHandler/MarkdownPreviewHandlerControl.cs +++ b/src/modules/previewpane/MarkdownPreviewHandler/MarkdownPreviewHandlerControl.cs @@ -130,7 +130,7 @@ namespace Microsoft.PowerToys.PreviewHandler.Markdown DefaultBackgroundColor = Color.Transparent, }; - var webView2Options = new CoreWebView2EnvironmentOptions("--block-new-web-contents"); + var webView2Options = new CoreWebView2EnvironmentOptions("--block-new-web-contents --disable-features=RendererAppContainer"); ConfiguredTaskAwaitable.ConfiguredTaskAwaiter webView2EnvironmentAwaiter = CoreWebView2Environment .CreateAsync(userDataFolder: _webView2UserDataFolder, options: webView2Options) diff --git a/src/modules/previewpane/MonacoPreviewHandler/MonacoPreviewHandlerControl.cs b/src/modules/previewpane/MonacoPreviewHandler/MonacoPreviewHandlerControl.cs index 192395fa31..1cb591adc3 100644 --- a/src/modules/previewpane/MonacoPreviewHandler/MonacoPreviewHandlerControl.cs +++ b/src/modules/previewpane/MonacoPreviewHandler/MonacoPreviewHandlerControl.cs @@ -125,10 +125,13 @@ namespace Microsoft.PowerToys.PreviewHandler.Monaco InitializeIndexFileAndSelectedFile(filePath); Logger.LogInfo("Create WebView2 environment"); + var webView2Options = new CoreWebView2EnvironmentOptions("--disable-features=RendererAppContainer"); ConfiguredTaskAwaitable.ConfiguredTaskAwaiter webView2EnvironmentAwaiter = CoreWebView2Environment - .CreateAsync(userDataFolder: System.Environment.GetEnvironmentVariable("USERPROFILE") + - "\\AppData\\LocalLow\\Microsoft\\PowerToys\\MonacoPreview-Temp") + .CreateAsync( + userDataFolder: System.Environment.GetEnvironmentVariable("USERPROFILE") + + "\\AppData\\LocalLow\\Microsoft\\PowerToys\\MonacoPreview-Temp", + options: webView2Options) .ConfigureAwait(true).GetAwaiter(); webView2EnvironmentAwaiter.OnCompleted(async () => { diff --git a/src/modules/previewpane/SvgPreviewHandler/SvgPreviewControl.cs b/src/modules/previewpane/SvgPreviewHandler/SvgPreviewControl.cs index ca8a169413..d3e63374e4 100644 --- a/src/modules/previewpane/SvgPreviewHandler/SvgPreviewControl.cs +++ b/src/modules/previewpane/SvgPreviewHandler/SvgPreviewControl.cs @@ -225,7 +225,7 @@ namespace Microsoft.PowerToys.PreviewHandler.Svg _browser.Dock = DockStyle.Fill; // Prevent new windows from being opened. - var webView2Options = new CoreWebView2EnvironmentOptions("--block-new-web-contents"); + var webView2Options = new CoreWebView2EnvironmentOptions("--block-new-web-contents --disable-features=RendererAppContainer"); ConfiguredTaskAwaitable.ConfiguredTaskAwaiter webView2EnvironmentAwaiter = CoreWebView2Environment .CreateAsync(userDataFolder: _webView2UserDataFolder, options: webView2Options) diff --git a/src/modules/previewpane/SvgThumbnailProvider/SvgThumbnailProvider.cs b/src/modules/previewpane/SvgThumbnailProvider/SvgThumbnailProvider.cs index bd200c9aed..5d5d750e5e 100644 --- a/src/modules/previewpane/SvgThumbnailProvider/SvgThumbnailProvider.cs +++ b/src/modules/previewpane/SvgThumbnailProvider/SvgThumbnailProvider.cs @@ -142,7 +142,7 @@ namespace Microsoft.PowerToys.ThumbnailHandler.Svg thumbnailDone.Set(); }; - var webView2Options = new CoreWebView2EnvironmentOptions("--block-new-web-contents"); + var webView2Options = new CoreWebView2EnvironmentOptions("--block-new-web-contents --disable-features=RendererAppContainer"); ConfiguredTaskAwaitable.ConfiguredTaskAwaiter webView2EnvironmentAwaiter = CoreWebView2Environment .CreateAsync(userDataFolder: _webView2UserDataFolder, options: webView2Options)