diff --git a/src/vs/workbench/contrib/welcome/gettingStarted/browser/gettingStarted.ts b/src/vs/workbench/contrib/welcome/gettingStarted/browser/gettingStarted.ts index e6c421fe14d..1213c5c3e0a 100644 --- a/src/vs/workbench/contrib/welcome/gettingStarted/browser/gettingStarted.ts +++ b/src/vs/workbench/contrib/welcome/gettingStarted/browser/gettingStarted.ts @@ -1247,6 +1247,11 @@ export class GettingStartedPage extends EditorPane { private buildCategorySlide(categoryID: string, selectedStep?: string) { if (this.detailsScrollbar) { this.detailsScrollbar.dispose(); } + this.extensionService.whenInstalledExtensionsRegistered().then(() => { + // Remove internal extension id specifier from exposed id's + this.extensionService.activateByEvent(`onWalkthrough:${categoryID.replace(/[^#]+#/, '')}`); + }); + this.detailsPageDisposables.clear(); const category = this.gettingStartedCategories.find(category => category.id === categoryID); diff --git a/src/vs/workbench/services/extensions/common/extensionsRegistry.ts b/src/vs/workbench/services/extensions/common/extensionsRegistry.ts index 736853d6857..7d9d3445bdd 100644 --- a/src/vs/workbench/services/extensions/common/extensionsRegistry.ts +++ b/src/vs/workbench/services/extensions/common/extensionsRegistry.ts @@ -329,6 +329,11 @@ export const schema: IJSONSchema = { body: 'onTerminalProfile:${1:terminalId}', description: nls.localize('vscode.extension.activationEvents.onTerminalProfile', 'An activation event emitted when a specific terminal profile is launched.'), }, + { + label: 'onWalkthrough', + body: 'onWalkthrough:${1:walkthroughID}', + description: nls.localize('vscode.extension.activationEvents.onWalkthrough', 'An activation event emitted when a specified walkthrough is opened.'), + }, { label: '*', description: nls.localize('vscode.extension.activationEvents.star', 'An activation event emitted on VS Code startup. To ensure a great end user experience, please use this activation event in your extension only when no other activation events combination works in your use-case.'),