@@ -37,7 +37,7 @@ import { ITheme, IMarker, IDisposable, ILinkProvider, IDecorationOptions, IDecor
3737import { DomRenderer } from 'browser/renderer/dom/DomRenderer' ;
3838import { KeyboardResultType , CoreMouseEventType , CoreMouseButton , CoreMouseAction , ITerminalOptions , ScrollSource , IColorEvent , ColorIndex , ColorRequestType } from 'common/Types' ;
3939import { evaluateKeyboardEvent } from 'common/input/Keyboard' ;
40- import { EventEmitter , IEvent , forwardEvent } from 'common/EventEmitter' ;
40+ import { EventEmitter , IEvent , forwardEvent , initEvent } from 'common/EventEmitter' ;
4141import { DEFAULT_ATTR_DATA } from 'common/buffer/BufferLine' ;
4242import { ColorManager } from 'browser/ColorManager' ;
4343import { RenderService } from 'browser/services/RenderService' ;
@@ -122,27 +122,16 @@ export class Terminal extends CoreTerminal implements ITerminal {
122122 private _colorManager : ColorManager | undefined ;
123123 private _theme : ITheme | undefined ;
124124
125- private readonly _onCursorMove = new EventEmitter < void > ( ) ;
126- public readonly onCursorMove = this . _onCursorMove . event ;
127- private readonly _onKey = new EventEmitter < { key : string , domEvent : KeyboardEvent } > ( ) ;
128- public readonly onKey = this . _onKey . event ;
129- private readonly _onRender = new EventEmitter < { start : number , end : number } > ( ) ;
130- public readonly onRender = this . _onRender . event ;
131- private readonly _onSelectionChange = new EventEmitter < void > ( ) ;
132- public readonly onSelectionChange = this . _onSelectionChange . event ;
133- private readonly _onTitleChange = new EventEmitter < string > ( ) ;
134- public readonly onTitleChange = this . _onTitleChange . event ;
135- private readonly _onBell = new EventEmitter < void > ( ) ;
136- public readonly onBell = this . _onBell . event ;
137-
138- private readonly _onFocus = new EventEmitter < void > ( ) ;
139- public readonly onFocus = this . _onFocus . event ;
140- private readonly _onBlur = new EventEmitter < void > ( ) ;
141- public readonly onBlur = this . _onBlur . event ;
142- private readonly _onA11yCharEmitter = new EventEmitter < string > ( ) ;
143- public readonly onA11yChar = this . _onA11yCharEmitter . event ;
144- private readonly _onA11yTabEmitter = new EventEmitter < number > ( ) ;
145- public readonly onA11yTab = this . _onA11yTabEmitter . event ;
125+ public readonly onCursorMove = initEvent < void > ( ) ;
126+ public readonly onKey = initEvent < { key : string , domEvent : KeyboardEvent } > ( ) ;
127+ public readonly onRender = initEvent < { start : number , end : number } > ( ) ;
128+ public readonly onSelectionChange = initEvent < void > ( ) ;
129+ public readonly onTitleChange = initEvent < string > ( ) ;
130+ public readonly onBell = initEvent < void > ( ) ;
131+ public readonly onFocus = initEvent < void > ( ) ;
132+ public readonly onBlur = initEvent < void > ( ) ;
133+ public readonly onA11yChar = initEvent < string > ( ) ;
134+ public readonly onA11yTab = initEvent < number > ( ) ;
146135
147136 /**
148137 * Creates a new `Terminal` object.
@@ -169,16 +158,16 @@ export class Terminal extends CoreTerminal implements ITerminal {
169158 this . _instantiationService . setService ( IDecorationService , this . _decorationService ) ;
170159
171160 // Setup InputHandler listeners
172- this . register ( this . _inputHandler . onRequestBell ( ( ) => this . _onBell . fire ( ) ) ) ;
161+ this . register ( this . _inputHandler . onRequestBell ( ( ) => this . onBell . fire ( ) ) ) ;
173162 this . register ( this . _inputHandler . onRequestRefreshRows ( ( start , end ) => this . refresh ( start , end ) ) ) ;
174163 this . register ( this . _inputHandler . onRequestSendFocus ( ( ) => this . _reportFocus ( ) ) ) ;
175164 this . register ( this . _inputHandler . onRequestReset ( ( ) => this . reset ( ) ) ) ;
176165 this . register ( this . _inputHandler . onRequestWindowsOptionsReport ( type => this . _reportWindowsOptions ( type ) ) ) ;
177166 this . register ( this . _inputHandler . onColor ( ( event ) => this . _handleColorEvent ( event ) ) ) ;
178- this . register ( forwardEvent ( this . _inputHandler . onCursorMove , this . _onCursorMove ) ) ;
179- this . register ( forwardEvent ( this . _inputHandler . onTitleChange , this . _onTitleChange ) ) ;
180- this . register ( forwardEvent ( this . _inputHandler . onA11yChar , this . _onA11yCharEmitter ) ) ;
181- this . register ( forwardEvent ( this . _inputHandler . onA11yTab , this . _onA11yTabEmitter ) ) ;
167+ this . register ( forwardEvent ( this . _inputHandler . onCursorMove , this . onCursorMove ) ) ;
168+ this . register ( forwardEvent ( this . _inputHandler . onTitleChange , this . onTitleChange ) ) ;
169+ this . register ( forwardEvent ( this . _inputHandler . onA11yChar , this . onA11yChar ) ) ;
170+ this . register ( forwardEvent ( this . _inputHandler . onA11yTab , this . onA11yTab ) ) ;
182171
183172 // Setup listeners
184173 this . register ( this . _bufferService . onResize ( e => this . _afterResize ( e . cols , e . rows ) ) ) ;
@@ -326,7 +315,7 @@ export class Terminal extends CoreTerminal implements ITerminal {
326315 this . updateCursorStyle ( ev ) ;
327316 this . element ! . classList . add ( 'focus' ) ;
328317 this . _showCursor ( ) ;
329- this . _onFocus . fire ( ) ;
318+ this . onFocus . fire ( ) ;
330319 }
331320
332321 /**
@@ -349,7 +338,7 @@ export class Terminal extends CoreTerminal implements ITerminal {
349338 this . coreService . triggerDataEvent ( C0 . ESC + '[O' ) ;
350339 }
351340 this . element ! . classList . remove ( 'focus' ) ;
352- this . _onBlur . fire ( ) ;
341+ this . onBlur . fire ( ) ;
353342 }
354343
355344 private _syncTextArea ( ) : void {
@@ -512,7 +501,7 @@ export class Terminal extends CoreTerminal implements ITerminal {
512501 const renderer = this . _createRenderer ( ) ;
513502 this . _renderService = this . register ( this . _instantiationService . createInstance ( RenderService , renderer , this . rows , this . screenElement ) ) ;
514503 this . _instantiationService . setService ( IRenderService , this . _renderService ) ;
515- this . register ( this . _renderService . onRenderedViewportChange ( e => this . _onRender . fire ( e ) ) ) ;
504+ this . register ( this . _renderService . onRenderedViewportChange ( e => this . onRender . fire ( e ) ) ) ;
516505 this . onResize ( e => this . _renderService ! . resize ( e . cols , e . rows ) ) ;
517506
518507 this . _compositionView = document . createElement ( 'div' ) ;
@@ -552,7 +541,7 @@ export class Terminal extends CoreTerminal implements ITerminal {
552541 ) ) ;
553542 this . _instantiationService . setService ( ISelectionService , this . _selectionService ) ;
554543 this . register ( this . _selectionService . onRequestScrollLines ( e => this . scrollLines ( e . amount , e . suppressScrollEvent ) ) ) ;
555- this . register ( this . _selectionService . onSelectionChange ( ( ) => this . _onSelectionChange . fire ( ) ) ) ;
544+ this . register ( this . _selectionService . onSelectionChange ( ( ) => this . onSelectionChange . fire ( ) ) ) ;
556545 this . register ( this . _selectionService . onRequestRedraw ( e => this . _renderService ! . onSelectionChanged ( e . start , e . end , e . columnSelectMode ) ) ) ;
557546 this . register ( this . _selectionService . onLinuxMouseSelection ( text => {
558547 // If there's a new selection, put it into the textarea, focus and select it
@@ -1101,7 +1090,7 @@ export class Terminal extends CoreTerminal implements ITerminal {
11011090 this . textarea ! . value = '' ;
11021091 }
11031092
1104- this . _onKey . fire ( { key : result . key , domEvent : event } ) ;
1093+ this . onKey . fire ( { key : result . key , domEvent : event } ) ;
11051094 this . _showCursor ( ) ;
11061095 this . coreService . triggerDataEvent ( result . key , true ) ;
11071096
@@ -1184,7 +1173,7 @@ export class Terminal extends CoreTerminal implements ITerminal {
11841173
11851174 key = String . fromCharCode ( key ) ;
11861175
1187- this . _onKey . fire ( { key, domEvent : ev } ) ;
1176+ this . onKey . fire ( { key, domEvent : ev } ) ;
11881177 this . _showCursor ( ) ;
11891178 this . coreService . triggerDataEvent ( key , true ) ;
11901179
0 commit comments