diff --git a/src/vs/editor/browser/viewParts/lines/viewLine.ts b/src/vs/editor/browser/viewParts/lines/viewLine.ts index 01acc025bfe239e6b71e602b09786c957c6a8b39..211a283ee7003e17a3a2fd179867514f95d7af03 100644 --- a/src/vs/editor/browser/viewParts/lines/viewLine.ts +++ b/src/vs/editor/browser/viewParts/lines/viewLine.ts @@ -576,20 +576,16 @@ class WebKitRenderedViewLine extends RenderedViewLine { // WebKit is buggy and returns an expanded range (to contain words in some cases) // The last client rect is enlarged (I think) - - // This is an attempt to patch things up - // Find position of previous column - let beforeEndPixelOffset = this._readPixelOffset(endColumn - 1, context); - // Find position of last column - let endPixelOffset = this._readPixelOffset(endColumn, context); - - if (beforeEndPixelOffset !== -1 && endPixelOffset !== -1) { - let isLTR = (beforeEndPixelOffset <= endPixelOffset); - let lastRange = output[output.length - 1]; - - if (isLTR && lastRange.left < endPixelOffset) { - // Trim down the width of the last visible range to not go after the last column's position - lastRange.width = endPixelOffset - lastRange.left; + if (!this.input.containsRTL) { + // This is an attempt to patch things up + // Find position of last column + let endPixelOffset = this._readPixelOffset(endColumn, context); + if (endPixelOffset !== -1) { + let lastRange = output[output.length - 1]; + if (lastRange.left < endPixelOffset) { + // Trim down the width of the last visible range to not go after the last column's position + lastRange.width = endPixelOffset - lastRange.left; + } } }