boolean (@NotNull Point p) { VisualPosition selectionEndPosition = myCaretModel.getCurrentCaret().getSelectionEndPosition(); Point selectionEnd = visualPositionToXY(selectionEndPosition); return p.y >= selectionEnd.y + getLineHeight() || p.y >= selectionEnd.y && p.x > selectionEnd.x && xyToVisualPosition(p).column > selectionEndPosition.column; }