From d9ff550d02d435e9bd931ecf48c391f3115994d3 Mon Sep 17 00:00:00 2001 From: Matt Bierner Date: Mon, 1 Feb 2021 19:57:54 -0800 Subject: [PATCH] Add intellisense for onOpenExternalUri activation and rename event Fixes #115131 Also renames the activation event to `onOpenExternalUri` --- extensions/simple-browser/package.json | 4 ++-- src/vs/vscode.proposed.d.ts | 2 +- src/vs/workbench/api/browser/mainThreadUriOpeners.ts | 2 +- .../services/extensions/common/extensionsRegistry.ts | 5 +++++ 4 files changed, 9 insertions(+), 4 deletions(-) diff --git a/extensions/simple-browser/package.json b/extensions/simple-browser/package.json index d93645f13c0..d6b276ca363 100644 --- a/extensions/simple-browser/package.json +++ b/extensions/simple-browser/package.json @@ -19,8 +19,8 @@ "activationEvents": [ "onCommand:simpleBrowser.show", "onCommand:simpleBrowser.api.open", - "onUriOpen:http", - "onUriOpen:https" + "onOpenExternalUri:http", + "onOpenExternalUri:https" ], "contributes": { "commands": [ diff --git a/src/vs/vscode.proposed.d.ts b/src/vs/vscode.proposed.d.ts index a3035f22ef2..8f0ead3ada8 100644 --- a/src/vs/vscode.proposed.d.ts +++ b/src/vs/vscode.proposed.d.ts @@ -2623,7 +2623,7 @@ declare module 'vscode' { /** * Register a new `ExternalUriOpener`. * - * When a uri is about to be opened, an `onUriOpen:SCHEME` activation event is fired. + * When a uri is about to be opened, an `onOpenExternalUri:SCHEME` activation event is fired. * * @param id Unique id of the opener, such as `myExtension.browserPreview`. This is used in settings * and commands to identify the opener. diff --git a/src/vs/workbench/api/browser/mainThreadUriOpeners.ts b/src/vs/workbench/api/browser/mainThreadUriOpeners.ts index 9ac5d76c1eb..e54b95c9275 100644 --- a/src/vs/workbench/api/browser/mainThreadUriOpeners.ts +++ b/src/vs/workbench/api/browser/mainThreadUriOpeners.ts @@ -56,7 +56,7 @@ export class MainThreadUriOpeners extends Disposable implements MainThreadUriOpe return; } - await this.extensionService.activateByEvent(`onUriOpen:${targetUri.scheme}`); + await this.extensionService.activateByEvent(`onOpenExternalUri:${targetUri.scheme}`); for (const [id, openerMetadata] of this._registeredOpeners) { if (openerMetadata.schemes.has(targetUri.scheme)) { diff --git a/src/vs/workbench/services/extensions/common/extensionsRegistry.ts b/src/vs/workbench/services/extensions/common/extensionsRegistry.ts index f261f99b59f..ee90a92f5ed 100644 --- a/src/vs/workbench/services/extensions/common/extensionsRegistry.ts +++ b/src/vs/workbench/services/extensions/common/extensionsRegistry.ts @@ -300,6 +300,11 @@ export const schema: IJSONSchema = { body: 'onUri', description: nls.localize('vscode.extension.activationEvents.onUri', 'An activation event emitted whenever a system-wide Uri directed towards this extension is open.'), }, + { + label: 'onOpenExternalUri', + body: 'onOpenExternalUri', + description: nls.localize('vscode.extension.activationEvents.onOpenExternalUri', 'An activation event emitted whenever a external uri (such as an http or https link) is being opened.'), + }, { label: 'onCustomEditor', body: 'onCustomEditor:${9:viewType}',