@@ -9,6 +9,7 @@ import { TerminalLink } from 'vs/workbench/contrib/terminal/browser/links/termin
99import { IInstantiationService } from 'vs/platform/instantiation/common/instantiation' ;
1010import { TerminalBaseLinkProvider } from 'vs/workbench/contrib/terminal/browser/links/terminalBaseLinkProvider' ;
1111import { ITerminalExternalLinkProvider , ITerminalInstance } from 'vs/workbench/contrib/terminal/browser/terminal' ;
12+ import { XtermLinkMatcherHandler } from 'vs/workbench/contrib/terminal/browser/links/terminalLinkManager' ;
1213
1314/**
1415 * An adapter to convert a simple external link provider into an internal link provider that
@@ -20,6 +21,7 @@ export class TerminalExternalLinkProviderAdapter extends TerminalBaseLinkProvide
2021 private readonly _xterm : Terminal ,
2122 private readonly _instance : ITerminalInstance ,
2223 private readonly _externalLinkProvider : ITerminalExternalLinkProvider ,
24+ private readonly _wrapLinkHandler : ( handler : ( event : MouseEvent | undefined , link : string ) => void ) => XtermLinkMatcherHandler ,
2325 private readonly _tooltipCallback : ( link : TerminalLink , viewportRange : IViewportRange , modifierDownCallback ?: ( ) => void , modifierUpCallback ?: ( ) => void ) => void ,
2426 @IInstantiationService private readonly _instantiationService : IInstantiationService
2527 ) {
@@ -58,7 +60,8 @@ export class TerminalExternalLinkProviderAdapter extends TerminalBaseLinkProvide
5860 endLineNumber : 1
5961 } , startLine ) ;
6062 const matchingText = lineContent . substr ( link . startIndex , link . length ) || '' ;
61- return this . _instantiationService . createInstance ( TerminalLink , bufferRange , matchingText , this . _xterm . buffer . active . viewportY , ( _ , text ) => link . activate ( text ) , this . _tooltipCallback , true , link . label ) ;
63+ const activateLink = this . _wrapLinkHandler ( ( _ , text ) => link . activate ( text ) ) ;
64+ return this . _instantiationService . createInstance ( TerminalLink , bufferRange , matchingText , this . _xterm . buffer . active . viewportY , activateLink , this . _tooltipCallback , true , link . label ) ;
6265 } ) ;
6366 }
6467}
0 commit comments