From df0ea766fc40ae033b9f709795cd91c7ad34a584 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=90=89=E4=BA=95=E3=80=80=E5=95=93=E4=BA=BA=EF=BC=88YOSH?= =?UTF-8?q?II=2C=20Hiroto=EF=BC=89?= Date: Fri, 4 Sep 2026 17:28:15 +0900 Subject: [PATCH] Support opening MHTML files in integrated browser (#333307) * Support opening MHTML files in integrated browser * Support opening MHTML files with editor resolver --- .../electron-browser/browserView.contribution.ts | 2 +- .../features/browserTabManagementFeatures.ts | 12 ++++++------ 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/src/vs/workbench/contrib/browserView/electron-browser/browserView.contribution.ts b/src/vs/workbench/contrib/browserView/electron-browser/browserView.contribution.ts index e48ef83bf1bd..7a69461a8f94 100644 --- a/src/vs/workbench/contrib/browserView/electron-browser/browserView.contribution.ts +++ b/src/vs/workbench/contrib/browserView/electron-browser/browserView.contribution.ts @@ -108,7 +108,7 @@ class BrowserEditorResolverContribution implements IWorkbenchContribution { } ); - for (const extension of ['html', 'htm']) { + for (const extension of ['html', 'htm', 'mhtml', 'mht']) { editorResolverService.registerEditor( `${Schemas.file}:/**/*.${extension}`, { diff --git a/src/vs/workbench/contrib/browserView/electron-browser/features/browserTabManagementFeatures.ts b/src/vs/workbench/contrib/browserView/electron-browser/features/browserTabManagementFeatures.ts index 8c0dfd27b3bf..471aed562410 100644 --- a/src/vs/workbench/contrib/browserView/electron-browser/features/browserTabManagementFeatures.ts +++ b/src/vs/workbench/contrib/browserView/electron-browser/features/browserTabManagementFeatures.ts @@ -340,9 +340,9 @@ class OpenIntegratedBrowserAction extends Action2 { class OpenFileInIntegratedBrowserAction extends Action2 { constructor() { - const IS_LOCAL_HTML_FILE = ContextKeyExpr.and( + const IS_SUPPORTED_LOCAL_BROWSER_FILE = ContextKeyExpr.and( ResourceContextKey.Scheme.isEqualTo(Schemas.file), - ContextKeyExpr.regex(ResourceContextKey.Extension.key, /\.html?$/i), + ContextKeyExpr.regex(ResourceContextKey.Extension.key, /\.(?:html?|mht(?:ml)?)$/i), ); super({ id: BrowserViewCommandId.OpenFile, @@ -350,25 +350,25 @@ class OpenFileInIntegratedBrowserAction extends Action2 { category: BrowserActionCategory, icon: Codicon.globe, f1: true, - precondition: IS_LOCAL_HTML_FILE, + precondition: IS_SUPPORTED_LOCAL_BROWSER_FILE, menu: [ { id: MenuId.ExplorerContext, group: 'navigation', order: 29, - when: IS_LOCAL_HTML_FILE, + when: IS_SUPPORTED_LOCAL_BROWSER_FILE, }, { id: MenuId.EditorTitleContext, group: '1_open', order: 5, - when: IS_LOCAL_HTML_FILE, + when: IS_SUPPORTED_LOCAL_BROWSER_FILE, }, { id: MenuId.EditorTitle, group: 'navigation', order: 99, - when: IS_LOCAL_HTML_FILE, + when: IS_SUPPORTED_LOCAL_BROWSER_FILE, }, ] });