diff --git a/src/vs/vscode.proposed.d.ts b/src/vs/vscode.proposed.d.ts index a1aa64a12ee64edeeb8b75698e59468722b761bc..29d07682e3ae2f9a245d7910e2e1e1c6ec31174c 100644 --- a/src/vs/vscode.proposed.d.ts +++ b/src/vs/vscode.proposed.d.ts @@ -409,7 +409,7 @@ declare module 'vscode' { * [Terminal.sendText](#Terminal.sendText). Keystrokes are converted into their * corresponding VT sequence representation. */ - onData: Event; // in + onInput: Event; // in // Fires when the panel area is resized, this DOES NOT fire when `dimensions` is set /** diff --git a/src/vs/workbench/api/electron-browser/mainThreadTerminalService.ts b/src/vs/workbench/api/electron-browser/mainThreadTerminalService.ts index adbbc21d52e96a14951b5215122e98c4b6a358b2..aba92f2b64dcfd4cfecc17db7257a05d57ed8aaf 100644 --- a/src/vs/workbench/api/electron-browser/mainThreadTerminalService.ts +++ b/src/vs/workbench/api/electron-browser/mainThreadTerminalService.ts @@ -17,7 +17,7 @@ export class MainThreadTerminalService implements MainThreadTerminalServiceShape private _toDispose: IDisposable[] = []; private _terminalProcesses: { [id: number]: ITerminalProcessExtHostProxy } = {}; private _dataListeners: { [id: number]: IDisposable } = {}; - private _rendererDataListeners: { [id: number]: IDisposable } = {}; + private _rendererInputListeners: { [id: number]: IDisposable } = {}; constructor( extHostContext: IExtHostContext, @@ -109,11 +109,11 @@ export class MainThreadTerminalService implements MainThreadTerminalServiceShape } } - public $terminalRendererRegisterOnDataListener(terminalId: number): void { + public $terminalRendererRegisterOnInputListener(terminalId: number): void { const terminalInstance = this.terminalService.getInstanceFromId(terminalId); if (terminalInstance) { - this._rendererDataListeners[terminalId] = terminalInstance.onRendererData(data => this._onTerminalRendererData(terminalId, data)); - terminalInstance.onDisposed(() => delete this._dataListeners[terminalId]); + this._rendererInputListeners[terminalId] = terminalInstance.onRendererInput(data => this._onTerminalRendererInput(terminalId, data)); + terminalInstance.onDisposed(() => delete this._rendererInputListeners[terminalId]); } } @@ -136,8 +136,8 @@ export class MainThreadTerminalService implements MainThreadTerminalServiceShape this._proxy.$acceptTerminalProcessData(terminalId, data); } - private _onTerminalRendererData(terminalId: number, data: string): void { - this._proxy.$acceptTerminalRendererData(terminalId, data); + private _onTerminalRendererInput(terminalId: number, data: string): void { + this._proxy.$acceptTerminalRendererInput(terminalId, data); } private _onTerminalDisposed(terminalInstance: ITerminalInstance): void { diff --git a/src/vs/workbench/api/node/extHost.protocol.ts b/src/vs/workbench/api/node/extHost.protocol.ts index 46f3887d424828c49ba542797c90afe210d6c057..bfb3a323c039b824f40ed0a62af9c2ff2f22c19f 100644 --- a/src/vs/workbench/api/node/extHost.protocol.ts +++ b/src/vs/workbench/api/node/extHost.protocol.ts @@ -342,7 +342,7 @@ export interface MainThreadTerminalServiceShape extends IDisposable { $terminalRendererSetName(terminalId: number, name: string): void; $terminalRendererSetDimensions(terminalId: number, dimensions: ITerminalDimensions): void; $terminalRendererWrite(terminalId: number, text: string): void; - $terminalRendererRegisterOnDataListener(terminalId: number): void; + $terminalRendererRegisterOnInputListener(terminalId: number): void; } export interface TransferQuickPickItems extends IQuickPickItem { @@ -844,7 +844,7 @@ export interface ExtHostTerminalServiceShape { $acceptTerminalOpened(id: number, name: string): void; $acceptTerminalProcessId(id: number, processId: number): void; $acceptTerminalProcessData(id: number, data: string): void; - $acceptTerminalRendererData(id: number, data: string): void; + $acceptTerminalRendererInput(id: number, data: string): void; $acceptTerminalRendererDimensions(id: number, cols: number, rows: number): void; $createProcess(id: number, shellLaunchConfig: ShellLaunchConfigDto, cols: number, rows: number): void; $acceptProcessInput(id: number, data: string): void; diff --git a/src/vs/workbench/api/node/extHostTerminalService.ts b/src/vs/workbench/api/node/extHostTerminalService.ts index e5cecc2c239f38d95e5c7dba429927e042f97664..6b0bd799644f593cd366eb61b028ee5eb49d3ae4 100644 --- a/src/vs/workbench/api/node/extHostTerminalService.ts +++ b/src/vs/workbench/api/node/extHostTerminalService.ts @@ -138,16 +138,16 @@ export class ExtHostTerminalRenderer extends BaseExtHostTerminal implements vsco this._queueApiRequest(this._proxy.$terminalRendererSetName, [this._name]); } - private readonly _onData: Emitter = new Emitter(); - public get onData(): Event { + private readonly _onInput: Emitter = new Emitter(); + public get onInput(): Event { this._checkDisposed(); - this._queueApiRequest(this._proxy.$terminalRendererRegisterOnDataListener, [this._id]); + this._queueApiRequest(this._proxy.$terminalRendererRegisterOnInputListener, [this._id]); // TODO: This is not firing on renderers as ExtHostTerminalService doesn't track them currently - console.log('TerminalRenderer.onData id: ', this._id); + console.log('TerminalRenderer.onInput id: ', this._id); // TODO: This needs to fire for keystrokes and sendText only for renderers // Tell the main side to start sending data if it's not already // this._proxy.$terminalRendererRegisterOnDataListener(this._id); - return this._onData && this._onData.event; + return this._onInput && this._onInput.event; } private _dimensions: vscode.TerminalDimensions | undefined; @@ -190,8 +190,8 @@ export class ExtHostTerminalRenderer extends BaseExtHostTerminal implements vsco this._queueApiRequest(this._proxy.$terminalRendererWrite, [data]); } - public _fireOnData(data: string): void { - this._onData.fire(data); + public _fireOnInput(data: string): void { + this._onInput.fire(data); } public _setMaximumDimensions(cols: number, rows: number): void { @@ -260,13 +260,13 @@ export class ExtHostTerminalService implements ExtHostTerminalServiceShape { renderer._setMaximumDimensions(cols, rows); } - public $acceptTerminalRendererData(id: number, data: string): void { + public $acceptTerminalRendererInput(id: number, data: string): void { const index = this._getTerminalRendererIndexById(id); if (index === null) { return; } const renderer = this._terminalRenderers[index]; - renderer._fireOnData(data); + renderer._fireOnInput(data); } public $acceptTerminalClosed(id: number): void { diff --git a/src/vs/workbench/parts/terminal/common/terminal.ts b/src/vs/workbench/parts/terminal/common/terminal.ts index 059b62be07a9834d760c7ec5c2e81b53781ef66d..c3543d0b9ba6b28bb3681fa651f9a05e12e97137 100644 --- a/src/vs/workbench/parts/terminal/common/terminal.ts +++ b/src/vs/workbench/parts/terminal/common/terminal.ts @@ -491,11 +491,11 @@ export interface ITerminalInstance { onData(listener: (data: string) => void): IDisposable; /** - * Attach a listener to the "renderer" data event, this event fires for terminal renderers on + * Attach a listener to the "renderer" input event, this event fires for terminal renderers on * keystrokes and when the Terminal.sendText extension API is used. * @param listener The listener function. */ - onRendererData(listener: (data: string) => void): IDisposable; + onRendererInput(listener: (data: string) => void): IDisposable; /** * Attach a listener to listen for new lines added to this terminal instance. diff --git a/src/vs/workbench/parts/terminal/electron-browser/terminalInstance.ts b/src/vs/workbench/parts/terminal/electron-browser/terminalInstance.ts index cad92a84db402db28f46734641160a23be52f1a3..ce978f9364df9bfd1da708fa96d23621cc003f48 100644 --- a/src/vs/workbench/parts/terminal/electron-browser/terminalInstance.ts +++ b/src/vs/workbench/parts/terminal/electron-browser/terminalInstance.ts @@ -813,9 +813,9 @@ export class TerminalInstance implements ITerminalInstance { return this._processManager.onProcessData(data => listener(data)); } - public onRendererData(listener: (data: string) => void): lifecycle.IDisposable { + public onRendererInput(listener: (data: string) => void): lifecycle.IDisposable { if (this._processManager) { - throw new Error('onRendererData attempted to be used on a regular terminal'); + throw new Error('onRendererINput attempted to be used on a regular terminal'); } // For terminal renderers onData fires on keystrokes and when sendText is called. // TODO: Handle sendText case