@@ -15,7 +15,7 @@ import { ICompressedTreeElement, ICompressedTreeNode } from 'vs/base/browser/ui/
1515import { ICompressibleTreeRenderer } from 'vs/base/browser/ui/tree/objectTree' ;
1616import { ITreeContextMenuEvent , ITreeNode } from 'vs/base/browser/ui/tree/tree' ;
1717import { Action , IAction , Separator } from 'vs/base/common/actions' ;
18- import { RunOnceScheduler } from 'vs/base/common/async' ;
18+ import { Delayer , RunOnceScheduler } from 'vs/base/common/async' ;
1919import { Codicon } from 'vs/base/common/codicons' ;
2020import { Color } from 'vs/base/common/color' ;
2121import { Emitter , Event } from 'vs/base/common/event' ;
@@ -1228,6 +1228,7 @@ class PlainTextMessagePeek extends Disposable implements IPeekOutputRenderer {
12281228class TerminalMessagePeek extends Disposable implements IPeekOutputRenderer {
12291229 private dimensions ?: dom . IDimension ;
12301230 private readonly terminalCwd = this . _register ( new MutableObservableValue < string > ( '' ) ) ;
1231+ private readonly xtermLayoutDelayer = this . _register ( new Delayer ( 50 ) ) ;
12311232
12321233 /** Active terminal instance. */
12331234 private readonly terminal = this . _register ( new MutableDisposable < IDetachedXtermTerminal > ( ) ) ;
@@ -1343,6 +1344,7 @@ class TerminalMessagePeek extends Disposable implements IPeekOutputRenderer {
13431344
13441345 private clear ( ) {
13451346 this . outputDataListener . clear ( ) ;
1347+ this . xtermLayoutDelayer . cancel ( ) ;
13461348 this . terminal . clear ( ) ;
13471349 }
13481350
@@ -1359,10 +1361,12 @@ class TerminalMessagePeek extends Disposable implements IPeekOutputRenderer {
13591361 height = this . dimensions ?. height ?? this . container . clientHeight
13601362 ) {
13611363 width -= 10 + 20 ; // scrollbar width + margin
1362- const scaled = getXtermScaledDimensions ( xterm . getFont ( ) , width , height ) ;
1363- if ( scaled ) {
1364- xterm . resize ( scaled . cols , scaled . rows ) ;
1365- }
1364+ this . xtermLayoutDelayer . trigger ( ( ) => {
1365+ const scaled = getXtermScaledDimensions ( xterm . getFont ( ) , width , height ) ;
1366+ if ( scaled ) {
1367+ xterm . resize ( scaled . cols , scaled . rows ) ;
1368+ }
1369+ } ) ;
13661370 }
13671371}
13681372
0 commit comments