Go through an implementation switch for ITextBuffer

This commit is contained in:
Alex Dima
2018-01-05 17:27:04 +02:00
parent 840587c07b
commit ed5ae61e12
12 changed files with 611 additions and 629 deletions

View File

@@ -11,10 +11,8 @@ import { Disposable } from 'vs/workbench/api/node/extHostTypes';
import { TPromise } from 'vs/base/common/winjs.base';
import * as vscode from 'vscode';
import { asWinJsPromise } from 'vs/base/common/async';
import { TextSource } from 'vs/editor/common/model/textSource';
import { MainContext, ExtHostDocumentContentProvidersShape, MainThreadDocumentContentProvidersShape, IMainContext } from './extHost.protocol';
import { ExtHostDocumentsAndEditors } from './extHostDocumentsAndEditors';
import { DefaultEndOfLine } from 'vs/editor/common/model';
export class ExtHostDocumentContentProvider implements ExtHostDocumentContentProvidersShape {
@@ -56,10 +54,10 @@ export class ExtHostDocumentContentProvider implements ExtHostDocumentContentPro
}
// create lines and compare
const textSource = TextSource.fromString(value, DefaultEndOfLine.CRLF);
const lines = value.split(/\r\n|\r|\n/);
// broadcast event when content changed
if (!document.equalLines(textSource)) {
if (!document.equalLines(lines)) {
return this._proxy.$onVirtualDocumentChange(uri, value);
}