Merge pull request #1368 from ajaxorg/multiselect_paste
Fix multiselect copy and paste
This commit is contained in:
commit
ef2b2bd1be
3 changed files with 17 additions and 7 deletions
|
|
@ -322,6 +322,8 @@ function calcDistance(ax, ay, bx, by) {
|
|||
function calcRangeOrientation(range, cursor) {
|
||||
if (range.start.row == range.end.row)
|
||||
var cmp = 2 * cursor.column - range.start.column - range.end.column;
|
||||
else if (range.start.row == range.end.row - 1 && !range.start.column && !range.end.column)
|
||||
var cmp = cursor.column - 4;
|
||||
else
|
||||
var cmp = 2 * cursor.row - range.start.row - range.end.row;
|
||||
|
||||
|
|
|
|||
|
|
@ -515,11 +515,14 @@ var Editor = require("./editor").Editor;
|
|||
var text = "";
|
||||
if (this.inMultiSelectMode) {
|
||||
var ranges = this.multiSelect.rangeList.ranges;
|
||||
text = [];
|
||||
var buf = [];
|
||||
for (var i = 0; i < ranges.length; i++) {
|
||||
text.push(this.session.getTextRange(ranges[i]));
|
||||
buf.push(this.session.getTextRange(ranges[i]));
|
||||
}
|
||||
text = text.join(this.session.getDocument().getNewLineCharacter());
|
||||
var nl = this.session.getDocument().getNewLineCharacter();
|
||||
text = buf.join(nl);
|
||||
if (text.length == (buf.length - 1) * nl.length)
|
||||
text = "";
|
||||
} else if (!this.selection.isEmpty()) {
|
||||
text = this.session.getTextRange(this.getSelectionRange());
|
||||
}
|
||||
|
|
@ -539,7 +542,7 @@ var Editor = require("./editor").Editor;
|
|||
var lines = text.split(/\r\n|\r|\n/);
|
||||
var ranges = this.selection.rangeList.ranges;
|
||||
|
||||
if (lines.length > ranges.length || (lines.length <= 2 || !lines[1]))
|
||||
if (lines.length > ranges.length || (lines.length <= 2 && !lines[1]))
|
||||
return this.commands.exec("insertstring", this, text);
|
||||
|
||||
for (var i = ranges.length; i--; ) {
|
||||
|
|
|
|||
|
|
@ -47,7 +47,7 @@
|
|||
}
|
||||
|
||||
.ace-eclipse .ace_comment {
|
||||
color: rgb(63, 127, 95);
|
||||
color: rgb(113, 150, 130);
|
||||
}
|
||||
|
||||
.ace-eclipse .ace_comment.ace_doc {
|
||||
|
|
@ -59,10 +59,11 @@
|
|||
}
|
||||
|
||||
.ace-eclipse .ace_constant.ace_numeric {
|
||||
color: darkblue;
|
||||
}
|
||||
|
||||
.ace-eclipse .ace_tag {
|
||||
color: rgb(63, 127, 127);
|
||||
color: rgb(25, 118, 116);
|
||||
}
|
||||
|
||||
.ace-eclipse .ace_type {
|
||||
|
|
@ -83,7 +84,11 @@
|
|||
}
|
||||
|
||||
.ace-eclipse .ace_meta.ace_tag {
|
||||
color:rgb(63, 127, 127);
|
||||
color:rgb(25, 118, 116);
|
||||
}
|
||||
|
||||
.ace-eclipse .ace_invisible {
|
||||
color: #ddd;
|
||||
}
|
||||
|
||||
.ace-eclipse .ace_entity.ace_other.ace_attribute-name {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue