33 * Licensed under the MIT License. See License.txt in the project root for license information.
44 *--------------------------------------------------------------------------------------------*/
55
6- import type { IBuffer , IMarker , ITheme , RendererType , Terminal as RawXtermTerminal } from 'xterm' ;
6+ import type { IBuffer , IMarker , ITheme , Terminal as RawXtermTerminal } from 'xterm' ;
77import type { ISearchOptions , SearchAddon as SearchAddonType } from 'xterm-addon-search' ;
88import type { Unicode11Addon as Unicode11AddonType } from 'xterm-addon-unicode11' ;
99import type { WebglAddon as WebglAddonType } from 'xterm-addon-webgl' ;
@@ -117,6 +117,7 @@ export class XtermTerminal extends DisposableStore implements IXtermTerminal, II
117117 const editorOptions = this . _configurationService . getValue < IEditorOptions > ( 'editor' ) ;
118118
119119 this . raw = this . add ( new xtermCtor ( {
120+ allowProposedApi : true ,
120121 cols,
121122 rows,
122123 altClickMovesCursor : config . altClickMovesCursor && editorOptions . multiCursorModifier === 'alt' ,
@@ -133,14 +134,13 @@ export class XtermTerminal extends DisposableStore implements IXtermTerminal, II
133134 cursorBlink : config . cursorBlinking ,
134135 cursorStyle : config . cursorStyle === 'line' ? 'bar' : config . cursorStyle ,
135136 cursorWidth : config . cursorWidth ,
136- bellStyle : 'none' ,
137137 macOptionIsMeta : config . macOptionIsMeta ,
138138 macOptionClickForcesSelection : config . macOptionClickForcesSelection ,
139139 rightClickSelectsWord : config . rightClickBehavior === 'selectWord' ,
140140 fastScrollModifier : 'alt' ,
141141 fastScrollSensitivity : config . fastScrollSensitivity ,
142142 scrollSensitivity : config . mouseWheelScrollSensitivity ,
143- rendererType : this . _getBuiltInXtermRenderer ( config . gpuAcceleration , XtermTerminal . _suggestedRendererType ) ,
143+ // rendererType: this._getBuiltInXtermRenderer(config.gpuAcceleration, XtermTerminal._suggestedRendererType),
144144 wordSeparator : config . wordSeparators ,
145145 overviewRulerWidth : 10
146146 } ) ) ;
@@ -241,7 +241,8 @@ export class XtermTerminal extends DisposableStore implements IXtermTerminal, II
241241 this . _enableWebglRenderer ( ) ;
242242 } else {
243243 this . _disposeOfWebglRenderer ( ) ;
244- this . raw . options . rendererType = this . _getBuiltInXtermRenderer ( config . gpuAcceleration , XtermTerminal . _suggestedRendererType ) ;
244+ // TODO: Fix renderer
245+ // this.raw.options.rendererType = this._getBuiltInXtermRenderer(config.gpuAcceleration, XtermTerminal._suggestedRendererType);
245246 }
246247 }
247248
@@ -267,12 +268,13 @@ export class XtermTerminal extends DisposableStore implements IXtermTerminal, II
267268 // This is to fix an issue where dragging the windpow to the top of the screen to
268269 // maximize on Windows/Linux would fire an event saying that the terminal was not
269270 // visible.
270- if ( this . raw . getOption ( 'rendererType' ) === 'canvas' ) {
271- this . _core . _renderService ?. _onIntersectionChange ( { intersectionRatio : 1 } ) ;
272- // HACK: Force a refresh of the screen to ensure links are refresh corrected.
273- // This can probably be removed when the above hack is fixed in Chromium.
274- this . raw . refresh ( 0 , this . raw . rows - 1 ) ;
275- }
271+ // TODO: Fix renderer
272+ // if (this.raw.getOption('rendererType') === 'canvas') {
273+ // this._core._renderService?._onIntersectionChange({ intersectionRatio: 1 });
274+ // // HACK: Force a refresh of the screen to ensure links are refresh corrected.
275+ // // This can probably be removed when the above hack is fixed in Chromium.
276+ // this.raw.refresh(0, this.raw.rows - 1);
277+ // }
276278 }
277279
278280 async findNext ( term : string , searchOptions : ISearchOptions ) : Promise < boolean > {
@@ -419,13 +421,14 @@ export class XtermTerminal extends DisposableStore implements IXtermTerminal, II
419421 }
420422 }
421423
422- private _getBuiltInXtermRenderer ( gpuAcceleration : string , suggestedRendererType ?: string ) : RendererType {
423- let rendererType : RendererType = 'canvas' ;
424- if ( gpuAcceleration === 'off' || ( gpuAcceleration === 'auto' && suggestedRendererType === 'dom' ) ) {
425- rendererType = 'dom' ;
426- }
427- return rendererType ;
428- }
424+ // TODO: Fix renderer
425+ // private _getBuiltInXtermRenderer(gpuAcceleration: string, suggestedRendererType?: string): RendererType {
426+ // let rendererType: RendererType = 'canvas';
427+ // if (gpuAcceleration === 'off' || (gpuAcceleration === 'auto' && suggestedRendererType === 'dom')) {
428+ // rendererType = 'dom';
429+ // }
430+ // return rendererType;
431+ // }
429432
430433 private async _enableWebglRenderer ( ) : Promise < void > {
431434 if ( ! this . raw . element || this . _webglAddon ) {
@@ -439,7 +442,8 @@ export class XtermTerminal extends DisposableStore implements IXtermTerminal, II
439442 this . _webglAddon . onContextLoss ( ( ) => {
440443 this . _logService . info ( `Webgl lost context, disposing of webgl renderer` ) ;
441444 this . _disposeOfWebglRenderer ( ) ;
442- this . raw . options . rendererType = 'dom' ;
445+ // TODO: Fix renderer
446+ // this.raw.options.rendererType = 'dom';
443447 } ) ;
444448 // Uncomment to add the texture atlas to the DOM
445449 // setTimeout(() => {
@@ -454,8 +458,9 @@ export class XtermTerminal extends DisposableStore implements IXtermTerminal, II
454458 if ( ! neverMeasureRenderTime && this . _configHelper . config . gpuAcceleration !== 'off' ) {
455459 this . _measureRenderTime ( ) ;
456460 }
457- this . raw . options . rendererType = 'canvas' ;
458- XtermTerminal . _suggestedRendererType = 'canvas' ;
461+ // TODO: Fix renderer
462+ // this.raw.options.rendererType = 'canvas';
463+ // XtermTerminal._suggestedRendererType = 'canvas';
459464 this . _disposeOfWebglRenderer ( ) ;
460465 }
461466 }
@@ -573,7 +578,7 @@ export class XtermTerminal extends DisposableStore implements IXtermTerminal, II
573578 foreground : foregroundColor ?. toString ( ) ,
574579 cursor : cursorColor ?. toString ( ) ,
575580 cursorAccent : cursorAccentColor ?. toString ( ) ,
576- selection : selectionBackgroundColor ?. toString ( ) ,
581+ selectionBackground : selectionBackgroundColor ?. toString ( ) ,
577582 selectionForeground : selectionForegroundColor ?. toString ( ) ,
578583 black : theme . getColor ( ansiColorIdentifiers [ 0 ] ) ?. toString ( ) ,
579584 red : theme . getColor ( ansiColorIdentifiers [ 1 ] ) ?. toString ( ) ,
@@ -595,7 +600,7 @@ export class XtermTerminal extends DisposableStore implements IXtermTerminal, II
595600 }
596601
597602 private _updateTheme ( theme ?: IColorTheme ) : void {
598- this . raw . setOption ( ' theme' , this . _getXtermTheme ( theme ) ) ;
603+ this . raw . options . theme = this . _getXtermTheme ( theme ) ;
599604 }
600605
601606 private async _updateUnicodeVersion ( ) : Promise < void > {
0 commit comments