Revert "SerializeAsHTML(): Fallback to default ansi colors when running headless terminal"

This commit is contained in:
Daniel Imms
2022-12-19 10:10:59 -08:00
committed by GitHub
parent 6cfdcb1b0d
commit 3a81ef54ca
2 changed files with 6 additions and 32 deletions
@@ -7,8 +7,7 @@
import { Terminal, ITerminalAddon, IBuffer, IBufferCell, IBufferRange } from 'xterm';
import { IColorSet } from 'browser/Types';
import { IAttributeData, IColor } from 'common/Types';
import { DEFAULT_ANSI_COLORS } from 'browser/services/ThemeService';
import { IAttributeData } from 'common/Types';
function constrain(value: number, low: number, high: number): number {
return Math.max(low, Math.min(value, high));
@@ -535,7 +534,7 @@ export class HTMLSerializeHandler extends BaseSerializeHandler {
private _htmlContent = '';
private _ansiColors: Readonly<IColor[]>;
private _colors: IColorSet;
constructor(
buffer: IBuffer,
@@ -544,13 +543,8 @@ export class HTMLSerializeHandler extends BaseSerializeHandler {
) {
super(buffer);
// For xterm headless: fallback to ansi colors
if ((_terminal as any)._core._themeService) {
this._ansiColors = (_terminal as any)._core._themeService.colors.ansi;
}
else {
this._ansiColors = DEFAULT_ANSI_COLORS;
}
// https://github.com/xtermjs/xterm.js/issues/3601
this._colors = (_terminal as any)._core._themeService.colors;
}
private _padStart(target: string, targetLength: number, padString: string): string {
@@ -606,7 +600,7 @@ export class HTMLSerializeHandler extends BaseSerializeHandler {
return rgb.map(x => this._padStart(x.toString(16), 2, '0')).join('');
}
if (isFg ? cell.isFgPalette() : cell.isBgPalette()) {
return this._ansiColors[color].css;
return this._colors.ansi[color].css;
}
return undefined;
}