diff --git a/lib/codemirror.js b/lib/codemirror.js index aa22d58499fd88e546ffdbb3a5a978fca56540de..51f956506b8cf3edfc195916d8f939ba44098b2a 100644 --- a/lib/codemirror.js +++ b/lib/codemirror.js @@ -3556,7 +3556,8 @@ var sel = cm.doc.sel, modifier = mac ? e.metaKey : e.ctrlKey, contained; if (cm.options.dragDrop && dragAndDrop && !isReadOnly(cm) && type == "single" && (contained = sel.contains(start)) > -1 && - !sel.ranges[contained].empty()) + (cmp((contained = sel.ranges[contained]).from(), start) < 0 || start.xRel > 0) && + (cmp(contained.to(), start) > 0 || start.xRel < 0)) leftButtonStartDrag(cm, e, start, modifier); else leftButtonSelect(cm, e, start, type, modifier);