From 762b640aca41ab1a6250cb3ad6e026bae6fd4e1b Mon Sep 17 00:00:00 2001 From: Alex Dima Date: Thu, 4 Feb 2016 23:31:02 +0100 Subject: [PATCH] Skip no-ops --- src/vs/editor/common/model/editableTextModel.ts | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/src/vs/editor/common/model/editableTextModel.ts b/src/vs/editor/common/model/editableTextModel.ts index 80d792301e7..b48778cfcf2 100644 --- a/src/vs/editor/common/model/editableTextModel.ts +++ b/src/vs/editor/common/model/editableTextModel.ts @@ -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); -- GitLab