From 9f3be5e28dd84e39246055597e399646b35128a6 Mon Sep 17 00:00:00 2001 From: Daniel Imms <2193314+Tyriar@users.noreply.github.com> Date: Tue, 15 Aug 2023 07:49:31 -0700 Subject: [PATCH] Simplify terminal interfaces Fixes #4663 --- src/browser/Terminal.ts | 2 +- src/browser/TestUtils.test.ts | 2 +- src/browser/Types.d.ts | 3 +-- src/browser/public/Terminal.ts | 2 +- src/common/Types.d.ts | 2 +- 5 files changed, 5 insertions(+), 6 deletions(-) diff --git a/src/browser/Terminal.ts b/src/browser/Terminal.ts index f0ce4694..71998bd5 100644 --- a/src/browser/Terminal.ts +++ b/src/browser/Terminal.ts @@ -920,7 +920,7 @@ export class Terminal extends CoreTerminal implements ITerminal { return this.buffer.markers; } - public addMarker(cursorYOffset: number): IMarker { + public registerMarker(cursorYOffset: number): IMarker { return this.buffer.addMarker(this.buffer.ybase + this.buffer.y + cursorYOffset); } diff --git a/src/browser/TestUtils.test.ts b/src/browser/TestUtils.test.ts index 5981a6b5..7b464a33 100644 --- a/src/browser/TestUtils.test.ts +++ b/src/browser/TestUtils.test.ts @@ -52,7 +52,7 @@ export class MockTerminal implements ITerminal { public coreService!: ICoreService; public optionsService!: IOptionsService; public unicodeService!: IUnicodeService; - public addMarker(cursorYOffset: number): IMarker { + public registerMarker(cursorYOffset: number): IMarker { throw new Error('Method not implemented.'); } public selectLines(start: number, end: number): void { diff --git a/src/browser/Types.d.ts b/src/browser/Types.d.ts index 7b445269..776790cd 100644 --- a/src/browser/Types.d.ts +++ b/src/browser/Types.d.ts @@ -13,7 +13,7 @@ import { IFunctionIdentifier, IParams } from 'common/parser/Types'; /** * A portion of the public API that are implemented identially internally and simply passed through. */ -type InternalPassthroughApis = Omit; +type InternalPassthroughApis = Omit; export interface ITerminal extends InternalPassthroughApis, ICoreTerminal { screenElement: HTMLElement | undefined; @@ -30,7 +30,6 @@ export interface ITerminal extends InternalPassthroughApis, ICoreTerminal { onWillOpen: IEvent; cancel(ev: Event, force?: boolean): boolean | void; - addMarker(cursorYOffset: number): IMarker; } export type CustomKeyEventHandler = (event: KeyboardEvent) => boolean; diff --git a/src/browser/public/Terminal.ts b/src/browser/public/Terminal.ts index 7a94356b..77f8fdde 100644 --- a/src/browser/public/Terminal.ts +++ b/src/browser/public/Terminal.ts @@ -161,7 +161,7 @@ export class Terminal extends Disposable implements ITerminalApi { } public registerMarker(cursorYOffset: number = 0): IMarker { this._verifyIntegers(cursorYOffset); - return this._core.addMarker(cursorYOffset); + return this._core.registerMarker(cursorYOffset); } public registerDecoration(decorationOptions: IDecorationOptions): IDecoration | undefined { this._checkProposedApi(); diff --git a/src/common/Types.d.ts b/src/common/Types.d.ts index fceb4e8e..ca9e25ff 100644 --- a/src/common/Types.d.ts +++ b/src/common/Types.d.ts @@ -17,7 +17,7 @@ export interface ICoreTerminal { optionsService: IOptionsService; unicodeService: IUnicodeService; buffers: IBufferSet; - options: ITerminalOptions; + options: Required; registerCsiHandler(id: IFunctionIdentifier, callback: (params: IParams) => boolean | Promise): IDisposable; registerDcsHandler(id: IFunctionIdentifier, callback: (data: string, param: IParams) => boolean | Promise): IDisposable; registerEscHandler(id: IFunctionIdentifier, callback: () => boolean | Promise): IDisposable;