diff --git a/src/vs/sessions/contrib/markdownPreview/browser/markdownPreview.contribution.ts b/src/vs/sessions/contrib/markdownPreview/browser/markdownPreview.contribution.ts new file mode 100644 index 00000000000..f186d71637d --- /dev/null +++ b/src/vs/sessions/contrib/markdownPreview/browser/markdownPreview.contribution.ts @@ -0,0 +1,24 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for license information. + *--------------------------------------------------------------------------------------------*/ + +import { localize } from '../../../../nls.js'; +import { ContextKeyExpr } from '../../../../platform/contextkey/common/contextkey.js'; +import { MenuId, MenuRegistry } from '../../../../platform/actions/common/actions.js'; +import { EditorContextKeys } from '../../../../editor/common/editorContextKeys.js'; +import { IsSessionsWindowContext } from '../../../../workbench/common/contextkeys.js'; + +// Show a floating "Open Preview" button in the editor content +// area when editing markdown or related prompt/instructions/chatagent/skill +// language content in the sessions window. +MenuRegistry.appendMenuItem(MenuId.EditorContent, { + command: { + id: 'markdown.showPreviewToSide', + title: localize('openPreview', "Open Preview"), + }, + when: ContextKeyExpr.and( + IsSessionsWindowContext, + ContextKeyExpr.regex(EditorContextKeys.languageId.key, /^(markdown|prompt|instructions|chatagent|skill)$/), + ), +}); diff --git a/src/vs/sessions/sessions.desktop.main.ts b/src/vs/sessions/sessions.desktop.main.ts index 4b35ada8541..17d622826eb 100644 --- a/src/vs/sessions/sessions.desktop.main.ts +++ b/src/vs/sessions/sessions.desktop.main.ts @@ -212,6 +212,7 @@ import './contrib/gitSync/browser/gitSync.contribution.js'; import './contrib/applyCommitsToParentRepo/browser/applyChangesToParentRepo.js'; import './contrib/fileTreeView/browser/fileTreeView.contribution.js'; // view registration disabled; filesystem provider still needed import './contrib/configuration/browser/configuration.contribution.js'; +import './contrib/markdownPreview/browser/markdownPreview.contribution.js'; import './contrib/terminal/browser/sessionsTerminalContribution.js'; import './contrib/logs/browser/logs.contribution.js';