提交 762b640a 编写于 作者: A Alex Dima

Skip no-ops

上级 7296da24
......@@ -16,7 +16,6 @@ import Errors = require('vs/base/common/errors');
export interface IDeltaSingleEditOperation {
original: IValidatedEditOperation;
isNoOp: boolean;
deltaStartLineNumber: number;
deltaStartColumn: number;
deltaEndLineNumber: number;
......@@ -231,11 +230,6 @@ export class EditableTextModel extends TextModelWithDecorations implements Edito
return {
original: operation,
isNoOp: (
operation.range.startLineNumber === operation.range.endLineNumber
&& operation.range.startColumn === operation.range.endColumn
&& (!operation.lines || operation.lines.length === 0)
),
deltaStartLineNumber: deltaStartLineNumber,
deltaStartColumn: deltaStartColumn,
deltaEndLineNumber: deltaEndLineNumber,
......@@ -349,6 +343,11 @@ export class EditableTextModel extends TextModelWithDecorations implements Edito
let endLineNumber = op.range.endLineNumber;
let endColumn = op.range.endColumn;
if (startLineNumber === endLineNumber && startColumn === endColumn && (!op.lines || op.lines.length === 0)) {
// no-op
continue;
}
let deletingLinesCnt = endLineNumber - startLineNumber;
let insertingLinesCnt = (op.lines ? op.lines.length - 1 : 0);
let editingLinesCnt = Math.min(deletingLinesCnt, insertingLinesCnt);
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册