diff --git a/src/measurement/position_measurement.js b/src/measurement/position_measurement.js index 4d2754b9509d924dd82213699e2ca8e87dd99317..1faa02ba3fd4dbbac9dbc06cd6c6cb71ddb6d582 100644 --- a/src/measurement/position_measurement.js +++ b/src/measurement/position_measurement.js @@ -427,7 +427,7 @@ export function coordsChar(cm, x, y) { function wrappedLineExtent(cm, lineObj, preparedMeasure, y) { let measure = ch => intoCoordSystem(cm, lineObj, measureCharPrepared(cm, preparedMeasure, ch), "line") let end = lineObj.text.length - let begin = findFirst(ch => measure(ch).bottom < y, end - 1, 0) + 1 + let begin = findFirst(ch => measure(ch).bottom <= y, end - 1, 0) + 1 end = findFirst(ch => measure(ch).top > y, begin, end) return {begin, end} } @@ -466,7 +466,7 @@ function coordsCharInner(cm, lineObj, lineNo, x, y) { end = Math.min(ch, end) return true } - else if (box.bottom < y) return false + else if (box.bottom <= y) return false else if (box.left > x) return true else if (box.right < x) return false else return (x - box.left < box.right - x)