Skip to content

Commit abd7820

Browse files
committed
Fire replay complete in remote
1 parent 6e286f8 commit abd7820

File tree

1 file changed

+7
-0
lines changed

1 file changed

+7
-0
lines changed

src/vs/workbench/contrib/terminal/browser/remotePty.ts

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66
import { Barrier } from 'vs/base/common/async';
77
import { Emitter } from 'vs/base/common/event';
88
import { Disposable } from 'vs/base/common/lifecycle';
9+
import { mark } from 'vs/base/common/performance';
910
import { URI } from 'vs/base/common/uri';
1011
import { IPtyHostProcessReplayEvent, ISerializedCommandDetectionCapability } from 'vs/platform/terminal/common/capabilities/capabilities';
1112
import { IProcessDataEvent, ITerminalChildProcess, ITerminalLaunchError, IProcessProperty, IProcessPropertyMap, ProcessPropertyType, IProcessReadyEvent, ITerminalLogService } from 'vs/platform/terminal/common/terminal';
@@ -32,6 +33,8 @@ export class RemotePty extends Disposable implements ITerminalChildProcess {
3233

3334
private readonly _onProcessData = this._register(new Emitter<string | IProcessDataEvent>());
3435
readonly onProcessData = this._onProcessData.event;
36+
private readonly _onProcessReplayComplete = this._register(new Emitter<void>());
37+
readonly onProcessReplayComplete = this._onProcessReplayComplete.event;
3538
private readonly _onProcessReady = this._register(new Emitter<IProcessReadyEvent>());
3639
readonly onProcessReady = this._onProcessReady.event;
3740
private readonly _onDidChangeProperty = this._register(new Emitter<IProcessProperty<any>>());
@@ -176,6 +179,7 @@ export class RemotePty extends Disposable implements ITerminalChildProcess {
176179
}
177180

178181
async handleReplay(e: IPtyHostProcessReplayEvent) {
182+
mark(`code/terminal/willHandleReplay/${this.id}`);
179183
try {
180184
this._inReplay = true;
181185
for (const innerEvent of e.events) {
@@ -197,6 +201,9 @@ export class RemotePty extends Disposable implements ITerminalChildProcess {
197201

198202
// remove size override
199203
this._onDidChangeProperty.fire({ type: ProcessPropertyType.OverrideDimensions, value: undefined });
204+
205+
mark(`code/terminal/didHandleReplay/${this.id}`);
206+
this._onProcessReplayComplete.fire();
200207
}
201208

202209
handleOrphanQuestion() {

0 commit comments

Comments
 (0)