Simplify TextFileChangeEvent (fixes #5929)

This commit is contained in:
Benjamin Pasero
2016-04-28 07:50:13 +02:00
parent 0d63b3e546
commit 6bad8b6982
10 changed files with 86 additions and 81 deletions

View File

@@ -16,7 +16,7 @@ import {IDisposable, dispose} from 'vs/base/common/lifecycle';
import {Range, Position, Disposable} from 'vs/workbench/api/node/extHostTypes';
import {IEventService} from 'vs/platform/event/common/event';
import {IWorkbenchEditorService} from 'vs/workbench/services/editor/common/editorService';
import {EventType as FileEventType, LocalFileChangeEvent, ITextFileService} from 'vs/workbench/parts/files/common/files';
import {EventType as FileEventType, TextFileChangeEvent, ITextFileService} from 'vs/workbench/parts/files/common/files';
import * as TypeConverters from './extHostTypeConverters';
import {TPromise} from 'vs/base/common/winjs.base';
import * as vscode from 'vscode';
@@ -475,19 +475,19 @@ export class MainThreadDocuments {
modelService.onModelRemoved(this._onModelRemoved, this, this._toDispose);
modelService.onModelModeChanged(this._onModelModeChanged, this, this._toDispose);
this._toDispose.push(eventService.addListener2(FileEventType.FILE_SAVED, (e: LocalFileChangeEvent) => {
this._toDispose.push(eventService.addListener2(FileEventType.FILE_SAVED, (e: TextFileChangeEvent) => {
if (this._shouldHandleFileEvent(e)) {
this._proxy._acceptModelSaved(e.getAfter().resource.toString());
this._proxy._acceptModelSaved(e.resource.toString());
}
}));
this._toDispose.push(eventService.addListener2(FileEventType.FILE_REVERTED, (e: LocalFileChangeEvent) => {
this._toDispose.push(eventService.addListener2(FileEventType.FILE_REVERTED, (e: TextFileChangeEvent) => {
if (this._shouldHandleFileEvent(e)) {
this._proxy._acceptModelReverted(e.getAfter().resource.toString());
this._proxy._acceptModelReverted(e.resource.toString());
}
}));
this._toDispose.push(eventService.addListener2(FileEventType.FILE_DIRTY, (e: LocalFileChangeEvent) => {
this._toDispose.push(eventService.addListener2(FileEventType.FILE_DIRTY, (e: TextFileChangeEvent) => {
if (this._shouldHandleFileEvent(e)) {
this._proxy._acceptModelDirty(e.getAfter().resource.toString());
this._proxy._acceptModelDirty(e.resource.toString());
}
}));
@@ -507,9 +507,8 @@ export class MainThreadDocuments {
this._toDispose = dispose(this._toDispose);
}
private _shouldHandleFileEvent(e: LocalFileChangeEvent): boolean {
const after = e.getAfter();
const model = this._modelService.getModel(after.resource);
private _shouldHandleFileEvent(e: TextFileChangeEvent): boolean {
const model = this._modelService.getModel(e.resource);
return model && !model.isTooLargeForHavingARichMode();
}