@@ -13,7 +13,6 @@ import { Emitter, Event } from 'vs/base/common/event';
1313import { IConfigurationService } from 'vs/platform/configuration/common/configuration' ;
1414import { TerminalLinkType } from 'vs/workbench/contrib/terminalContrib/links/browser/links' ;
1515import { IHoverAction } from 'vs/workbench/services/hover/browser/hover' ;
16- import { $window } from 'vs/base/browser/window' ;
1716
1817export class TerminalLink extends DisposableStore implements ILink {
1918 decorations : ILinkDecorations ;
@@ -62,14 +61,16 @@ export class TerminalLink extends DisposableStore implements ILink {
6261 }
6362
6463 hover ( event : MouseEvent , text : string ) : void {
64+ const w = dom . getWindow ( event ) ;
65+ const d = w . document ;
6566 // Listen for modifier before handing it off to the hover to handle so it gets disposed correctly
6667 this . _hoverListeners = new DisposableStore ( ) ;
67- this . _hoverListeners . add ( dom . addDisposableListener ( $window . document , 'keydown' , e => {
68+ this . _hoverListeners . add ( dom . addDisposableListener ( d , 'keydown' , e => {
6869 if ( ! e . repeat && this . _isModifierDown ( e ) ) {
6970 this . _enableDecorations ( ) ;
7071 }
7172 } ) ) ;
72- this . _hoverListeners . add ( dom . addDisposableListener ( $window . document , 'keyup' , e => {
73+ this . _hoverListeners . add ( dom . addDisposableListener ( d , 'keyup' , e => {
7374 if ( ! e . repeat && ! this . _isModifierDown ( e ) ) {
7475 this . _disableDecorations ( ) ;
7576 }
@@ -102,7 +103,7 @@ export class TerminalLink extends DisposableStore implements ILink {
102103 }
103104
104105 const origin = { x : event . pageX , y : event . pageY } ;
105- this . _hoverListeners . add ( dom . addDisposableListener ( $window . document , dom . EventType . MOUSE_MOVE , e => {
106+ this . _hoverListeners . add ( dom . addDisposableListener ( d , dom . EventType . MOUSE_MOVE , e => {
106107 // Update decorations
107108 if ( this . _isModifierDown ( e ) ) {
108109 this . _enableDecorations ( ) ;
@@ -111,7 +112,7 @@ export class TerminalLink extends DisposableStore implements ILink {
111112 }
112113
113114 // Reset the scheduler if the mouse moves too much
114- if ( Math . abs ( e . pageX - origin . x ) > $window . devicePixelRatio * 2 || Math . abs ( e . pageY - origin . y ) > $window . devicePixelRatio * 2 ) {
115+ if ( Math . abs ( e . pageX - origin . x ) > w . devicePixelRatio * 2 || Math . abs ( e . pageY - origin . y ) > w . devicePixelRatio * 2 ) {
115116 origin . x = e . pageX ;
116117 origin . y = e . pageY ;
117118 this . _tooltipScheduler ?. schedule ( ) ;
0 commit comments