Replace EventEmitter usage in BufferSet
This commit is contained in:
+9
-6
@@ -3,25 +3,28 @@
|
||||
* @license MIT
|
||||
*/
|
||||
|
||||
import { ITerminal, IBufferSet } from './Types';
|
||||
import { ITerminal, IBufferSet, IBuffer } from './Types';
|
||||
import { Buffer } from './Buffer';
|
||||
import { EventEmitter } from './common/EventEmitter';
|
||||
import { EventEmitter2, IEvent } from '../lib/common/EventEmitter2';
|
||||
|
||||
/**
|
||||
* The BufferSet represents the set of two buffers used by xterm terminals (normal and alt) and
|
||||
* provides also utilities for working with them.
|
||||
*/
|
||||
export class BufferSet extends EventEmitter implements IBufferSet {
|
||||
export class BufferSet implements IBufferSet {
|
||||
private _normal: Buffer;
|
||||
private _alt: Buffer;
|
||||
private _activeBuffer: Buffer;
|
||||
|
||||
|
||||
private _onBufferActivate = new EventEmitter2<{activeBuffer: IBuffer, inactiveBuffer: IBuffer}>();
|
||||
public get onBufferActivate(): IEvent<{activeBuffer: IBuffer, inactiveBuffer: IBuffer}> { return this._onBufferActivate.event; }
|
||||
|
||||
/**
|
||||
* Create a new BufferSet for the given terminal.
|
||||
* @param _terminal - The terminal the BufferSet will belong to
|
||||
*/
|
||||
constructor(private _terminal: ITerminal) {
|
||||
super();
|
||||
this._normal = new Buffer(this._terminal, true);
|
||||
this._normal.fillViewportRows();
|
||||
|
||||
@@ -68,7 +71,7 @@ export class BufferSet extends EventEmitter implements IBufferSet {
|
||||
// when activated.
|
||||
this._alt.clear();
|
||||
this._activeBuffer = this._normal;
|
||||
this.emit('activate', {
|
||||
this._onBufferActivate.fire({
|
||||
activeBuffer: this._normal,
|
||||
inactiveBuffer: this._alt
|
||||
});
|
||||
@@ -87,7 +90,7 @@ export class BufferSet extends EventEmitter implements IBufferSet {
|
||||
this._alt.x = this._normal.x;
|
||||
this._alt.y = this._normal.y;
|
||||
this._activeBuffer = this._alt;
|
||||
this.emit('activate', {
|
||||
this._onBufferActivate.fire({
|
||||
activeBuffer: this._alt,
|
||||
inactiveBuffer: this._normal
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user