From 3e29a03f874202d74e464e4083565ccefe9977a1 Mon Sep 17 00:00:00 2001 From: Daniel Imms Date: Sat, 30 Sep 2017 07:54:52 -0400 Subject: [PATCH] Fix rendering issues for emojis that come out as wide chars The fix is to disallow non-single cell width chars to be overlapping --- src/renderer/TextRenderLayer.ts | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/src/renderer/TextRenderLayer.ts b/src/renderer/TextRenderLayer.ts index e319efe7..eb163c1c 100644 --- a/src/renderer/TextRenderLayer.ts +++ b/src/renderer/TextRenderLayer.ts @@ -183,10 +183,15 @@ export class TextRenderLayer extends BaseRenderLayer { } /** - * Whether a character is overlapping to the - * next cell. + * Whether a character is overlapping to the next cell. */ private _isOverlapping(charData: CharData): boolean { + // Only single cell characters can be overlapping, rendering issues can + // occur without this check + if (charData[CHAR_DATA_WIDTH_INDEX] !== 1) { + return false; + } + // We assume that any ascii character will not overlap const code = charData[CHAR_DATA_CODE_INDEX]; if (code < 256) {