From bcb71e854f905bf2cd554ed7640ba7196ad2a6d4 Mon Sep 17 00:00:00 2001 From: Daniel Imms <2193314+Tyriar@users.noreply.github.com> Date: Thu, 19 May 2022 09:32:57 -0700 Subject: [PATCH] Fix decoration positioning In _createElement the element wasn't set on the decoration yet. Fixes 3818 --- src/browser/decorations/BufferDecorationRenderer.ts | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/browser/decorations/BufferDecorationRenderer.ts b/src/browser/decorations/BufferDecorationRenderer.ts index 632a2864..7fcc5ea9 100644 --- a/src/browser/decorations/BufferDecorationRenderer.ts +++ b/src/browser/decorations/BufferDecorationRenderer.ts @@ -84,7 +84,7 @@ export class BufferDecorationRenderer extends Disposable { // exceeded the container width, so hide element.style.display = 'none'; } - this._refreshXPosition(decoration); + this._refreshXPosition(decoration, element); return element; } @@ -112,15 +112,15 @@ export class BufferDecorationRenderer extends Disposable { } } - private _refreshXPosition(decoration: IInternalDecoration): void { - if (!decoration.element) { + private _refreshXPosition(decoration: IInternalDecoration, element: HTMLElement | undefined = decoration.element): void { + if (!element) { return; } const x = decoration.options.x ?? 0; if ((decoration.options.anchor || 'left') === 'right') { - decoration.element.style.right = x ? `${x * this._renderService.dimensions.actualCellWidth}px` : ''; + element.style.right = x ? `${x * this._renderService.dimensions.actualCellWidth}px` : ''; } else { - decoration.element.style.left = x ? `${x * this._renderService.dimensions.actualCellWidth}px` : ''; + element.style.left = x ? `${x * this._renderService.dimensions.actualCellWidth}px` : ''; } }