diff --git a/addons/addon-webgl/src/WebglRenderer.ts b/addons/addon-webgl/src/WebglRenderer.ts index 14fc6cdb..3e93ca85 100644 --- a/addons/addon-webgl/src/WebglRenderer.ts +++ b/addons/addon-webgl/src/WebglRenderer.ts @@ -107,12 +107,11 @@ export class WebglRenderer extends Disposable implements IRenderer { this._updateDimensions(); this._updateCursorBlink(); this._register(_optionsService.onOptionChange(() => this._handleOptionsChanged())); - this._textBlinkStateManager = new TextBlinkStateManager( + this._textBlinkStateManager = this._register(new TextBlinkStateManager( () => this._requestRedrawViewport(), this._coreBrowserService - ); + )); this._textBlinkStateManager.setIntervalDuration(this._optionsService.rawOptions.blinkIntervalDuration); - this._register(toDisposable(() => this._textBlinkStateManager.dispose())); this._deviceMaxTextureSize = this._gl.getParameter(this._gl.MAX_TEXTURE_SIZE); diff --git a/src/browser/renderer/dom/DomRenderer.ts b/src/browser/renderer/dom/DomRenderer.ts index c00f67a3..23273308 100644 --- a/src/browser/renderer/dom/DomRenderer.ts +++ b/src/browser/renderer/dom/DomRenderer.ts @@ -98,12 +98,11 @@ export class DomRenderer extends Disposable implements IRenderer { this._cursorBlinkStateManager = new CursorBlinkStateManager(this._rowContainer, this._coreBrowserService); this._register(addDisposableListener(this._document, 'mousedown', () => this._cursorBlinkStateManager.restartBlinkAnimation())); this._register(toDisposable(() => this._cursorBlinkStateManager.dispose())); - this._textBlinkStateManager = new TextBlinkStateManager( + this._textBlinkStateManager = this._register(new TextBlinkStateManager( () => this._onRequestRedraw.fire({ start: 0, end: this._bufferService.rows - 1 }), this._coreBrowserService - ); + )); this._textBlinkStateManager.setIntervalDuration(this._optionsService.rawOptions.blinkIntervalDuration); - this._register(toDisposable(() => this._textBlinkStateManager.dispose())); this._register(toDisposable(() => { this._element.classList.remove(TERMINAL_CLASS_PREFIX + this._terminalClass);