From 1e8901630cd38ed4e4c97d32b34d177b948f1b10 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=84=BF=E6=97=B6?= <58261676+childrentime@users.noreply.github.com> Date: Wed, 2 Mar 2022 11:25:20 +0800 Subject: [PATCH 1/2] Replace all getOption/setOption usage with options --- .../xterm-addon-ligatures/src/index.test.ts | 36 +++++++++---------- addons/xterm-addon-ligatures/src/index.ts | 8 ++--- addons/xterm-addon-webgl/src/WebglRenderer.ts | 8 ++--- .../src/atlas/CharAtlasUtils.ts | 20 +++++------ .../src/renderLayer/BaseRenderLayer.ts | 4 +-- .../src/renderLayer/CursorRenderLayer.ts | 14 ++++---- .../test/WebglRenderer.api.ts | 36 +++++++++---------- demo/index.html | 2 +- test/api/InputHandler.api.ts | 4 +-- test/api/MouseTracking.api.ts | 2 +- test/api/Terminal.api.ts | 7 ---- 11 files changed, 67 insertions(+), 74 deletions(-) diff --git a/addons/xterm-addon-ligatures/src/index.test.ts b/addons/xterm-addon-ligatures/src/index.test.ts index 838955c011..f9f10d0b06 100644 --- a/addons/xterm-addon-ligatures/src/index.test.ts +++ b/addons/xterm-addon-ligatures/src/index.test.ts @@ -78,7 +78,7 @@ describe('xterm-addon-ligatures', () => { }); it('handles quoted font names', done => { - term.setOption('fontFamily', '"Fira Code", monospace'); + term.options.fontFamily = '"Fira Code", monospace'; assert.deepEqual(term.joiner!(input), []); onRefresh.callsFake(() => { assert.deepEqual(term.joiner!(input), [[2, 4], [7, 10]]); @@ -87,7 +87,7 @@ describe('xterm-addon-ligatures', () => { }); it('falls back to later fonts if earlier ones are not present', done => { - term.setOption('fontFamily', 'notinstalled, Fira Code, monospace'); + term.options.fontFamily = 'notinstalled, Fira Code, monospace'; assert.deepEqual(term.joiner!(input), []); onRefresh.callsFake(() => { assert.deepEqual(term.joiner!(input), [[2, 4], [7, 10]]); @@ -98,17 +98,17 @@ describe('xterm-addon-ligatures', () => { it('uses the current font value', done => { // The first three calls are all synchronous so that we don't allow time for // any fonts to load while we're switching things around - term.setOption('fontFamily', 'Fira Code'); + term.options.fontFamily = 'Fira Code'; assert.deepEqual(term.joiner!(input), []); - term.setOption('fontFamily', 'notinstalled'); + term.options.fontFamily = 'notinstalled'; assert.deepEqual(term.joiner!(input), []); - term.setOption('fontFamily', 'Iosevka'); + term.options.fontFamily = 'Iosevka'; assert.deepEqual(term.joiner!(input), []); onRefresh.callsFake(() => { assert.deepEqual(term.joiner!(input), [[2, 4]]); // And switch it back to Fira Code for good measure - term.setOption('fontFamily', 'Fira Code'); + term.options.fontFamily = 'Fira Code'; // At this point, we haven't loaded the new font, so the result reverts // back to empty until that happens @@ -124,7 +124,7 @@ describe('xterm-addon-ligatures', () => { it('allows multiple terminal instances that use different fonts', done => { const onRefresh2 = sinon.stub(); const term2 = new MockTerminal(onRefresh2); - term2.setOption('fontFamily', 'Iosevka'); + term2.options.fontFamily = 'Iosevka'; ligatureSupport.enableLigatures(term2 as any); assert.deepEqual(term.joiner!(input), []); @@ -140,7 +140,7 @@ describe('xterm-addon-ligatures', () => { }); it('fails if it finds but cannot load the font', async () => { - term.setOption('fontFamily', 'Nonexistant Font, monospace'); + term.options.fontFamily = 'Nonexistant Font, monospace'; assert.deepEqual(term.joiner!(input), []); await delay(500); assert.isTrue(onRefresh.notCalled); @@ -148,7 +148,7 @@ describe('xterm-addon-ligatures', () => { }); it('returns nothing if the font is not present on the system', async () => { - term.setOption('fontFamily', 'notinstalled'); + term.options.fontFamily = 'notinstalled'; assert.deepEqual(term.joiner!(input), []); await delay(500); assert.isTrue(onRefresh.notCalled); @@ -156,7 +156,7 @@ describe('xterm-addon-ligatures', () => { }); it('returns nothing if no specific font is specified', async () => { - term.setOption('fontFamily', 'monospace'); + term.options.fontFamily = 'monospace'; assert.deepEqual(term.joiner!(input), []); await delay(500); assert.isTrue(onRefresh.notCalled); @@ -164,7 +164,7 @@ describe('xterm-addon-ligatures', () => { }); it('returns nothing if no fonts are provided', async () => { - term.setOption('fontFamily', ''); + term.options.fontFamily = ''; assert.deepEqual(term.joiner!(input), []); await delay(500); assert.isTrue(onRefresh.notCalled); @@ -172,7 +172,7 @@ describe('xterm-addon-ligatures', () => { }); it('fails when given malformed inputs', async () => { - term.setOption('fontFamily', {} as any); + term.options.fontFamily = {} as any; assert.deepEqual(term.joiner!(input), []); await delay(500); assert.isTrue(onRefresh.notCalled); @@ -181,7 +181,7 @@ describe('xterm-addon-ligatures', () => { it('ensures no empty errors are thrown', async () => { sinon.stub(fontLigatures, 'loadFile').callsFake(async () => { throw undefined; }); - term.setOption('fontFamily', 'Iosevka'); + term.options.fontFamily = 'Iosevka'; assert.deepEqual(term.joiner!(input), []); await delay(500); assert.isTrue(onRefresh.notCalled); @@ -209,11 +209,11 @@ class MockTerminal { public deregisterCharacterJoiner(id: number): void { this.joiner = undefined; } - public setOption(name: string, value: string | number): void { - this._options[name] = value; - } - public getOption(name: string): string | number { - return this._options[name]; + public get options(): { [name: string]: string | number } { return this._options; } + public set options(options: { [name: string]: string | number }) { + for (const key in this._options) { + this._options[key] = options[key]; + } } } diff --git a/addons/xterm-addon-ligatures/src/index.ts b/addons/xterm-addon-ligatures/src/index.ts index c867369d86..c54f3b5048 100644 --- a/addons/xterm-addon-ligatures/src/index.ts +++ b/addons/xterm-addon-ligatures/src/index.ts @@ -34,7 +34,7 @@ export function enableLigatures(term: Terminal): void { term.registerCharacterJoiner((text: string): [number, number][] => { // If the font hasn't been loaded yet, load it and return an empty result - const termFont = term.getOption('fontFamily'); + const termFont = term.options.fontFamily; if ( termFont && (loadingState === LoadingState.UNLOADED || currentFontName !== termFont) @@ -48,20 +48,20 @@ export function enableLigatures(term: Terminal): void { .then(f => { // Another request may have come in while we were waiting, so make // sure our font is still vaild. - if (currentCallFontName === term.getOption('fontFamily')) { + if (currentCallFontName === term.options.fontFamily) { loadingState = LoadingState.LOADED; font = f; // Only refresh things if we actually found a font if (f) { - term.refresh(0, term.getOption('rows') - 1); + term.refresh(0, term.options.rows! - 1); } } }) .catch(e => { // Another request may have come in while we were waiting, so make // sure our font is still vaild. - if (currentCallFontName === term.getOption('fontFamily')) { + if (currentCallFontName === term.options.fontFamily) { loadingState = LoadingState.FAILED; font = undefined; loadError = e; diff --git a/addons/xterm-addon-webgl/src/WebglRenderer.ts b/addons/xterm-addon-webgl/src/WebglRenderer.ts index 24e55fed4e..a256b9da75 100644 --- a/addons/xterm-addon-webgl/src/WebglRenderer.ts +++ b/addons/xterm-addon-webgl/src/WebglRenderer.ts @@ -440,18 +440,18 @@ export class WebglRenderer extends Disposable implements IRenderer { // will be floored because since lineHeight can never be lower then 1, there // is a guarentee that the scaled line height will always be larger than // scaled char height. - this.dimensions.scaledCellHeight = Math.floor(this.dimensions.scaledCharHeight * this._terminal.getOption('lineHeight')); + this.dimensions.scaledCellHeight = Math.floor(this.dimensions.scaledCharHeight * this._terminal.options.lineHeight!); // Calculate the y coordinate within a cell that text should draw from in // order to draw in the center of a cell. - this.dimensions.scaledCharTop = this._terminal.getOption('lineHeight') === 1 ? 0 : Math.round((this.dimensions.scaledCellHeight - this.dimensions.scaledCharHeight) / 2); + this.dimensions.scaledCharTop = this._terminal.options.lineHeight === 1 ? 0 : Math.round((this.dimensions.scaledCellHeight - this.dimensions.scaledCharHeight) / 2); // Calculate the scaled cell width, taking the letterSpacing into account. - this.dimensions.scaledCellWidth = this.dimensions.scaledCharWidth + Math.round(this._terminal.getOption('letterSpacing')); + this.dimensions.scaledCellWidth = this.dimensions.scaledCharWidth + Math.round(this._terminal.options.letterSpacing!); // Calculate the x coordinate with a cell that text should draw from in // order to draw in the center of a cell. - this.dimensions.scaledCharLeft = Math.floor(this._terminal.getOption('letterSpacing') / 2); + this.dimensions.scaledCharLeft = Math.floor(this._terminal.options.letterSpacing! / 2); // Recalculate the canvas dimensions; scaled* define the actual number of // pixel in the canvas diff --git a/addons/xterm-addon-webgl/src/atlas/CharAtlasUtils.ts b/addons/xterm-addon-webgl/src/atlas/CharAtlasUtils.ts index 962eb7b34b..4705796a9b 100644 --- a/addons/xterm-addon-webgl/src/atlas/CharAtlasUtils.ts +++ b/addons/xterm-addon-webgl/src/atlas/CharAtlasUtils.ts @@ -28,21 +28,21 @@ export function generateConfig(scaledCellWidth: number, scaledCellHeight: number contrastCache: colors.contrastCache }; return { - customGlyphs: terminal.getOption('customGlyphs'), + customGlyphs: terminal.options.customGlyphs!, devicePixelRatio: window.devicePixelRatio, - letterSpacing: terminal.getOption('letterSpacing'), - lineHeight: terminal.getOption('lineHeight'), + letterSpacing: terminal.options.letterSpacing!, + lineHeight: terminal.options.lineHeight!, scaledCellWidth, scaledCellHeight, scaledCharWidth, scaledCharHeight, - fontFamily: terminal.getOption('fontFamily'), - fontSize: terminal.getOption('fontSize'), - fontWeight: terminal.getOption('fontWeight') as FontWeight, - fontWeightBold: terminal.getOption('fontWeightBold') as FontWeight, - allowTransparency: terminal.getOption('allowTransparency'), - drawBoldTextInBrightColors: terminal.getOption('drawBoldTextInBrightColors'), - minimumContrastRatio: terminal.getOption('minimumContrastRatio'), + fontFamily: terminal.options.fontFamily!, + fontSize: terminal.options.fontSize!, + fontWeight: terminal.options.fontWeight as FontWeight, + fontWeightBold: terminal.options.fontWeightBold as FontWeight, + allowTransparency: terminal.options.allowTransparency!, + drawBoldTextInBrightColors: terminal.options.drawBoldTextInBrightColors!, + minimumContrastRatio: terminal.options.minimumContrastRatio!, colors: clonedColors }; } diff --git a/addons/xterm-addon-webgl/src/renderLayer/BaseRenderLayer.ts b/addons/xterm-addon-webgl/src/renderLayer/BaseRenderLayer.ts index 4c17aad4e1..619ca1a80c 100644 --- a/addons/xterm-addon-webgl/src/renderLayer/BaseRenderLayer.ts +++ b/addons/xterm-addon-webgl/src/renderLayer/BaseRenderLayer.ts @@ -254,10 +254,10 @@ export abstract class BaseRenderLayer implements IRenderLayer { * @param isBold If we should use the bold fontWeight. */ protected _getFont(terminal: Terminal, isBold: boolean, isItalic: boolean): string { - const fontWeight = isBold ? terminal.getOption('fontWeightBold') : terminal.getOption('fontWeight'); + const fontWeight = isBold ? terminal.options.fontWeightBold : terminal.options.fontWeight; const fontStyle = isItalic ? 'italic' : ''; - return `${fontStyle} ${fontWeight} ${terminal.getOption('fontSize') * window.devicePixelRatio}px ${terminal.getOption('fontFamily')}`; + return `${fontStyle} ${fontWeight} ${terminal.options.fontSize! * window.devicePixelRatio}px ${terminal.options.fontFamily}`; } } diff --git a/addons/xterm-addon-webgl/src/renderLayer/CursorRenderLayer.ts b/addons/xterm-addon-webgl/src/renderLayer/CursorRenderLayer.ts index 4199b7e150..c80b4c5681 100644 --- a/addons/xterm-addon-webgl/src/renderLayer/CursorRenderLayer.ts +++ b/addons/xterm-addon-webgl/src/renderLayer/CursorRenderLayer.ts @@ -83,7 +83,7 @@ export class CursorRenderLayer extends BaseRenderLayer { } public onOptionsChanged(terminal: Terminal): void { - if (terminal.getOption('cursorBlink')) { + if (terminal.options.cursorBlink) { if (!this._cursorBlinkStateManager) { this._cursorBlinkStateManager = new CursorBlinkStateManager(terminal, () => { this._render(terminal, true); @@ -140,7 +140,7 @@ export class CursorRenderLayer extends BaseRenderLayer { this._clearCursor(); this._ctx.save(); this._ctx.fillStyle = this._colors.cursor.css; - const cursorStyle = terminal.getOption('cursorStyle'); + const cursorStyle = terminal.options.cursorStyle; if (cursorStyle && cursorStyle !== 'block') { this._cursorRenderers[cursorStyle](terminal, cursorX, viewportRelativeCursorY, this._cell); } else { @@ -150,7 +150,7 @@ export class CursorRenderLayer extends BaseRenderLayer { this._state.x = cursorX; this._state.y = viewportRelativeCursorY; this._state.isFocused = false; - this._state.style = cursorStyle; + this._state.style = cursorStyle!; this._state.width = this._cell.getWidth(); return; } @@ -166,7 +166,7 @@ export class CursorRenderLayer extends BaseRenderLayer { if (this._state.x === cursorX && this._state.y === viewportRelativeCursorY && this._state.isFocused === isTerminalFocused(terminal) && - this._state.style === terminal.getOption('cursorStyle') && + this._state.style === terminal.options.cursorStyle && this._state.width === this._cell.getWidth()) { return; } @@ -174,13 +174,13 @@ export class CursorRenderLayer extends BaseRenderLayer { } this._ctx.save(); - this._cursorRenderers[terminal.getOption('cursorStyle') || 'block'](terminal, cursorX, viewportRelativeCursorY, this._cell); + this._cursorRenderers[terminal.options.cursorStyle || 'block'](terminal, cursorX, viewportRelativeCursorY, this._cell); this._ctx.restore(); this._state.x = cursorX; this._state.y = viewportRelativeCursorY; this._state.isFocused = false; - this._state.style = terminal.getOption('cursorStyle'); + this._state.style = terminal.options.cursorStyle!; this._state.width = this._cell.getWidth(); } @@ -205,7 +205,7 @@ export class CursorRenderLayer extends BaseRenderLayer { private _renderBarCursor(terminal: Terminal, x: number, y: number, cell: ICellData): void { this._ctx.save(); this._ctx.fillStyle = this._colors.cursor.css; - this._fillLeftLineAtCell(x, y, terminal.getOption('cursorWidth')); + this._fillLeftLineAtCell(x, y, terminal.options.cursorWidth!); this._ctx.restore(); } diff --git a/addons/xterm-addon-webgl/test/WebglRenderer.api.ts b/addons/xterm-addon-webgl/test/WebglRenderer.api.ts index e6942d1cb8..080d7ce80f 100644 --- a/addons/xterm-addon-webgl/test/WebglRenderer.api.ts +++ b/addons/xterm-addon-webgl/test/WebglRenderer.api.ts @@ -49,7 +49,7 @@ describe('WebGL Renderer Integration Tests', async () => { cyan: '#131415', white: '#161718' }; - await page.evaluate(`window.term.setOption('theme', ${JSON.stringify(theme)});`); + await page.evaluate(`window.term.options.theme = ${JSON.stringify(theme)};`); await writeSync(page, `\\x1b[30m█\\x1b[31m█\\x1b[32m█\\x1b[33m█\\x1b[34m█\\x1b[35m█\\x1b[36m█\\x1b[37m█`); await pollFor(page, () => getCellColor(1, 1), [1, 2, 3, 255]); await pollFor(page, () => getCellColor(2, 1), [4, 5, 6, 255]); @@ -73,8 +73,8 @@ describe('WebGL Renderer Integration Tests', async () => { brightWhite: '#161718' }; await page.evaluate(` - window.term.setOption('theme', ${JSON.stringify(theme)}); - window.term.setOption('drawBoldTextInBrightColors', true); + window.term.options.theme = ${JSON.stringify(theme)}; + window.term.options.drawBoldTextInBrightColors = true; `); await writeSync(page, `\\x1b[1;30m█\\x1b[1;31m█\\x1b[1;32m█\\x1b[1;33m█\\x1b[1;34m█\\x1b[1;35m█\\x1b[1;36m█\\x1b[1;37m█`); await pollFor(page, () => getCellColor(1, 1), [1, 2, 3, 255]); @@ -98,7 +98,7 @@ describe('WebGL Renderer Integration Tests', async () => { cyan: '#131415', white: '#161718' }; - await page.evaluate(`window.term.setOption('theme', ${JSON.stringify(theme)});`); + await page.evaluate(`window.term.options.theme = ${JSON.stringify(theme)};`); await writeSync(page, `\\x1b[40m \\x1b[41m \\x1b[42m \\x1b[43m \\x1b[44m \\x1b[45m \\x1b[46m \\x1b[47m `); await pollFor(page, () => getCellColor(1, 1), [1, 2, 3, 255]); await pollFor(page, () => getCellColor(2, 1), [4, 5, 6, 255]); @@ -121,7 +121,7 @@ describe('WebGL Renderer Integration Tests', async () => { cyan: '#131415', white: '#161718' }; - await page.evaluate(`window.term.setOption('theme', ${JSON.stringify(theme)});`); + await page.evaluate(`window.term.options.theme = ${JSON.stringify(theme)};`); await writeSync(page, `\\x1b[7;30m \\x1b[7;31m \\x1b[7;32m \\x1b[7;33m \\x1b[7;34m \\x1b[7;35m \\x1b[7;36m \\x1b[7;37m `); await pollFor(page, () => getCellColor(1, 1), [1, 2, 3, 255]); await pollFor(page, () => getCellColor(2, 1), [4, 5, 6, 255]); @@ -144,7 +144,7 @@ describe('WebGL Renderer Integration Tests', async () => { cyan: '#131415', white: '#161718' }; - await page.evaluate(`window.term.setOption('theme', ${JSON.stringify(theme)});`); + await page.evaluate(`window.term.options.theme = ${JSON.stringify(theme)};`); await writeSync(page, `\\x1b[7;40m█\\x1b[7;41m█\\x1b[7;42m█\\x1b[7;43m█\\x1b[7;44m█\\x1b[7;45m█\\x1b[7;46m█\\x1b[7;47m█`); await pollFor(page, () => getCellColor(1, 1), [1, 2, 3, 255]); await pollFor(page, () => getCellColor(2, 1), [4, 5, 6, 255]); @@ -167,7 +167,7 @@ describe('WebGL Renderer Integration Tests', async () => { cyan: '#131415', white: '#161718' }; - await page.evaluate(`window.term.setOption('theme', ${JSON.stringify(theme)});`); + await page.evaluate(`window.term.options.theme = ${JSON.stringify(theme)};`); await writeSync(page, `\\x1b[8;30m \\x1b[8;31m \\x1b[8;32m \\x1b[8;33m \\x1b[8;34m \\x1b[8;35m \\x1b[8;36m \\x1b[8;37m `); await pollFor(page, () => getCellColor(1, 1), [0, 0, 0, 255]); await pollFor(page, () => getCellColor(2, 1), [0, 0, 0, 255]); @@ -190,7 +190,7 @@ describe('WebGL Renderer Integration Tests', async () => { cyan: '#131415', white: '#161718' }; - await page.evaluate(`window.term.setOption('theme', ${JSON.stringify(theme)});`); + await page.evaluate(`window.term.options.theme = ${JSON.stringify(theme)};`); await writeSync(page, `\\x1b[8;40m█\\x1b[8;41m█\\x1b[8;42m█\\x1b[8;43m█\\x1b[8;44m█\\x1b[8;45m█\\x1b[8;46m█\\x1b[8;47m█`); await pollFor(page, () => getCellColor(1, 1), [1, 2, 3, 255]); await pollFor(page, () => getCellColor(2, 1), [4, 5, 6, 255]); @@ -213,7 +213,7 @@ describe('WebGL Renderer Integration Tests', async () => { brightCyan: '#131415', brightWhite: '#161718' }; - await page.evaluate(`window.term.setOption('theme', ${JSON.stringify(theme)});`); + await page.evaluate(`window.term.options.theme = ${JSON.stringify(theme)};`); await writeSync(page, `\\x1b[90m█\\x1b[91m█\\x1b[92m█\\x1b[93m█\\x1b[94m█\\x1b[95m█\\x1b[96m█\\x1b[97m█`); await pollFor(page, () => getCellColor(1, 1), [1, 2, 3, 255]); await pollFor(page, () => getCellColor(2, 1), [4, 5, 6, 255]); @@ -236,7 +236,7 @@ describe('WebGL Renderer Integration Tests', async () => { brightCyan: '#131415', brightWhite: '#161718' }; - await page.evaluate(`window.term.setOption('theme', ${JSON.stringify(theme)});`); + await page.evaluate(`window.term.options.theme = ${JSON.stringify(theme)};`); await writeSync(page, `\\x1b[100m \\x1b[101m \\x1b[102m \\x1b[103m \\x1b[104m \\x1b[105m \\x1b[106m \\x1b[107m `); await pollFor(page, () => getCellColor(1, 1), [1, 2, 3, 255]); await pollFor(page, () => getCellColor(2, 1), [4, 5, 6, 255]); @@ -715,8 +715,8 @@ describe('WebGL Renderer Integration Tests', async () => { brightWhite: '#eeeeec' }; await page.evaluate(` - window.term.setOption('theme', ${JSON.stringify(theme)}); - window.term.setOption('minimumContrastRatio', 1); + window.term.options.theme = ${JSON.stringify(theme)}; + window.term.options.minimumContrastRatio = 1; `); await writeSync(page, `\\x1b[30m█\\x1b[31m█\\x1b[32m█\\x1b[33m█\\x1b[34m█\\x1b[35m█\\x1b[36m█\\x1b[37m█\\r\\n` + @@ -742,7 +742,7 @@ describe('WebGL Renderer Integration Tests', async () => { // Setting and check for minimum contrast values, note that these are note // exact to the contrast ratio, if the increase luminance algorithm // changes then these will probably fail - await page.evaluate(`window.term.setOption('minimumContrastRatio', 10);`); + await page.evaluate(`window.term.options.minimumContrastRatio = 10;`); await pollFor(page, () => getCellColor(1, 1), [176, 180, 180, 255]); await pollFor(page, () => getCellColor(2, 1), [238, 158, 158, 255]); await pollFor(page, () => getCellColor(3, 1), [197, 223, 171, 255]); @@ -783,8 +783,8 @@ describe('WebGL Renderer Integration Tests', async () => { brightWhite: '#eeeeec' }; await page.evaluate(` - window.term.setOption('theme', ${JSON.stringify(theme)}); - window.term.setOption('minimumContrastRatio', 1); + window.term.options.theme = ${JSON.stringify(theme)}; + window.term.options.minimumContrastRatio = 1; `); await writeSync(page, `\\x1b[30m█\\x1b[31m█\\x1b[32m█\\x1b[33m█\\x1b[34m█\\x1b[35m█\\x1b[36m█\\x1b[37m█\\r\\n` + @@ -810,7 +810,7 @@ describe('WebGL Renderer Integration Tests', async () => { // Setting and check for minimum contrast values, note that these are note // exact to the contrast ratio, if the increase luminance algorithm // changes then these will probably fail - await page.evaluate(`window.term.setOption('minimumContrastRatio', 10);`); + await page.evaluate(`window.term.options.minimumContrastRatio = 10;`); await pollFor(page, () => getCellColor(1, 1), [46, 52, 54, 255]); await pollFor(page, () => getCellColor(2, 1), [132, 0, 0, 255]); await pollFor(page, () => getCellColor(3, 1), [78, 154, 6, 255]); @@ -843,7 +843,7 @@ describe('WebGL Renderer Integration Tests', async () => { background: '#00FF00', selection: '#0000FF' }; - await page.evaluate(`window.term.setOption('theme', ${JSON.stringify(theme)});`); + await page.evaluate(`window.term.options.theme = ${JSON.stringify(theme)};`); await writeSync(page, ` █\\x1b[7m█\\x1b[0m`); await pollFor(page, () => getCellColor(1, 1), [0, 255, 0, 255]); await pollFor(page, () => getCellColor(2, 1), [255, 0, 0, 255]); @@ -867,7 +867,7 @@ describe('WebGL Renderer Integration Tests', async () => { const theme: ITheme = { background: '#ff000080' }; - await page.evaluate(`window.term.setOption('theme', ${JSON.stringify(theme)});`); + await page.evaluate(`window.term.options.theme = ${JSON.stringify(theme)};`); const data = `\\x1b[7m█\x1b[0m`; await writeSync(page, data); // Inverse background should be opaque diff --git a/demo/index.html b/demo/index.html index e024222c46..311116318f 100644 --- a/demo/index.html +++ b/demo/index.html @@ -28,7 +28,7 @@
These options can be set in the Terminal
constructor or by using the Terminal.setOption
function.
These options can be set in the Terminal
constructor or by using the Terminal.options
property.