This commit is contained in:
Daniel Imms 2016-09-10 12:35:19 -07:00
parent 3d93bad53e
commit 7bf362eb61
4 changed files with 7 additions and 13 deletions

View file

@ -100,12 +100,11 @@ export interface ITerminalService {
onActiveInstanceChanged: Event<string>;
onInstancesChanged: Event<string>;
onInstanceTitleChanged: Event<string>;
// If this needed if getTerminalInstanceTitles is exposed?
terminalInstances: ITerminalInstance[];
createInstance(name?: string, shellPath?: string): ITerminalInstance;
getInstanceFromId(terminalId: number): ITerminalInstance;
getInstanceTitles(): string[];
getInstanceLabels(): string[];
getActiveInstance(): ITerminalInstance;
setActiveInstance(terminalInstance: ITerminalInstance): void;
setActiveInstanceByIndex(terminalIndex: number): void;
@ -121,8 +120,6 @@ export interface ITerminalInstance {
id: number;
onTitleChanged: Event<string>;
title: string;
//ptyProcess: cp.ChildProcess;
//xterm: any;
dispose(): void;
copySelection(): void;

View file

@ -234,15 +234,14 @@ export class SwitchTerminalInstanceActionItem extends SelectActionItem {
action: IAction,
@ITerminalService private terminalService: ITerminalService
) {
super(null, action, terminalService.terminalInstances.map((t) => t.title), terminalService.activeTerminalInstanceIndex);
this.toDispose.push(this.terminalService.onInstancesChanged(this.updateItems, this));
this.toDispose.push(this.terminalService.onActiveInstanceChanged(this.updateItems, this));
this.toDispose.push(this.terminalService.onInstanceTitleChanged(this.updateItems, this));
super(null, action, terminalService.getInstanceLabels(), terminalService.activeTerminalInstanceIndex);
this.toDispose.push(terminalService.onInstancesChanged(this.updateItems, this));
this.toDispose.push(terminalService.onActiveInstanceChanged(this.updateItems, this));
this.toDispose.push(terminalService.onInstanceTitleChanged(this.updateItems, this));
}
private updateItems(): void {
console.log('updateItems');
this.setOptions(this.terminalService.getInstanceTitles(), this.terminalService.activeTerminalInstanceIndex);
this.setOptions(this.terminalService.getInstanceLabels(), this.terminalService.activeTerminalInstanceIndex);
}
}

View file

@ -64,7 +64,6 @@ export class TerminalInstance implements ITerminalInstance {
this.createProcess(name, shellPath);
if (container) {
console.log('attach to element', container);
this.attachToElement(container);
}
}

View file

@ -63,7 +63,7 @@ export class TerminalService implements ITerminalService {
return terminalInstance;
}
public getInstanceTitles(): string[] {
public getInstanceLabels(): string[] {
return this._terminalInstances.map((instance, index) => `${index + 1}: ${instance.title}`);
}
@ -117,7 +117,6 @@ export class TerminalService implements ITerminalService {
}
public setContainers(panelContainer: Builder, terminalContainer: HTMLElement): void {
console.log('set containers');
this.terminalContainer = terminalContainer;
this._terminalInstances.forEach(terminalInstance => {
terminalInstance.attachToElement(this.terminalContainer);