diff --git a/src/vs/base/common/network.ts b/src/vs/base/common/network.ts index 93de044478a53..c88cdaf8becdf 100644 --- a/src/vs/base/common/network.ts +++ b/src/vs/base/common/network.ts @@ -38,5 +38,7 @@ export namespace Schemas { export const file: string = 'file'; + export const mailto: string = 'mailto'; + export const untitled: string = 'untitled'; } diff --git a/src/vs/platform/opener/browser/openerService.ts b/src/vs/platform/opener/browser/openerService.ts index a97c643538dbe..940eea3895809 100644 --- a/src/vs/platform/opener/browser/openerService.ts +++ b/src/vs/platform/opener/browser/openerService.ts @@ -40,10 +40,10 @@ export class OpenerService implements IOpenerService { const { scheme, path, query, fragment } = resource; let promise: TPromise; - if (scheme === Schemas.http || scheme === Schemas.https) { - // open http - dom.windowOpenNoOpener(resource.toString(true)); + if (scheme === Schemas.http || scheme === Schemas.https || scheme === Schemas.mailto) { + // open http or default mail application + dom.windowOpenNoOpener(resource.toString(true)); } else if (scheme === 'command' && CommandsRegistry.getCommand(path)) { // execute as command let args: any = [];