From fa7ce995f4e68b8988da78ae601c2cfec8bd9072 Mon Sep 17 00:00:00 2001 From: Benjamin Pasero Date: Wed, 6 Jul 2016 15:34:05 +0200 Subject: [PATCH] more fixes for #8578 --- .../media/workbench.css | 0 src/vs/workbench/electron-browser/shell.ts | 2 +- .../workbench.ts | 0 .../parts/files/browser/textFileServices.ts | 21 ++--------------- .../electron-browser/textFileServices.ts | 23 +++++++++++++++++-- src/vs/workbench/workbench.main.ts | 2 +- 6 files changed, 25 insertions(+), 23 deletions(-) rename src/vs/workbench/{browser => electron-browser}/media/workbench.css (100%) rename src/vs/workbench/{browser => electron-browser}/workbench.ts (100%) diff --git a/src/vs/workbench/browser/media/workbench.css b/src/vs/workbench/electron-browser/media/workbench.css similarity index 100% rename from src/vs/workbench/browser/media/workbench.css rename to src/vs/workbench/electron-browser/media/workbench.css diff --git a/src/vs/workbench/electron-browser/shell.ts b/src/vs/workbench/electron-browser/shell.ts index a426aa9e640..4dba40dd28b 100644 --- a/src/vs/workbench/electron-browser/shell.ts +++ b/src/vs/workbench/electron-browser/shell.ts @@ -17,7 +17,7 @@ import {dispose, IDisposable, Disposables} from 'vs/base/common/lifecycle'; import errors = require('vs/base/common/errors'); import {ContextViewService} from 'vs/platform/contextview/browser/contextViewService'; import timer = require('vs/base/common/timer'); -import {Workbench} from 'vs/workbench/browser/workbench'; +import {Workbench} from 'vs/workbench/electron-browser/workbench'; import {Storage, inMemoryLocalStorageInstance} from 'vs/workbench/common/storage'; import {ITelemetryService, NullTelemetryService} from 'vs/platform/telemetry/common/telemetry'; import {ITelemetryAppenderChannel, TelemetryAppenderClient} from 'vs/platform/telemetry/common/telemetryIpc'; diff --git a/src/vs/workbench/browser/workbench.ts b/src/vs/workbench/electron-browser/workbench.ts similarity index 100% rename from src/vs/workbench/browser/workbench.ts rename to src/vs/workbench/electron-browser/workbench.ts diff --git a/src/vs/workbench/parts/files/browser/textFileServices.ts b/src/vs/workbench/parts/files/browser/textFileServices.ts index 499e6f25e17..9ef367f037b 100644 --- a/src/vs/workbench/parts/files/browser/textFileServices.ts +++ b/src/vs/workbench/parts/files/browser/textFileServices.ts @@ -21,7 +21,6 @@ import {ITelemetryService} from 'vs/platform/telemetry/common/telemetry'; import {IDisposable, dispose} from 'vs/base/common/lifecycle'; import {IWorkbenchEditorService} from 'vs/workbench/services/editor/common/editorService'; import {IEditorGroupService} from 'vs/workbench/services/group/common/groupService'; -import {ModelBuilder} from 'vs/editor/node/model/modelBuilder'; import {IModelService} from 'vs/editor/common/services/modelService'; /** @@ -49,7 +48,7 @@ export abstract class TextFileService implements ITextFileService { @IEditorGroupService private editorGroupService: IEditorGroupService, @IEventService private eventService: IEventService, @IFileService protected fileService: IFileService, - @IModelService private modelService: IModelService + @IModelService protected modelService: IModelService ) { this.listenerToUnbind = []; this._onAutoSaveConfigurationChange = new Emitter(); @@ -64,23 +63,7 @@ export abstract class TextFileService implements ITextFileService { this.telemetryService.publicLog('autoSave', this.getAutoSaveConfiguration()); } - public resolveTextContent(resource: URI, options?: IResolveContentOptions): TPromise { - return this.fileService.resolveStreamContent(resource, options).then((streamContent) => { - return ModelBuilder.fromStringStream(streamContent.value, this.modelService.getCreationOptions()).then((res) => { - let r: IRawTextContent = { - resource: streamContent.resource, - name: streamContent.name, - mtime: streamContent.mtime, - etag: streamContent.etag, - mime: streamContent.mime, - encoding: streamContent.encoding, - value: res.rawText, - valueLogicalHash: res.hash - }; - return r; - }); - }); - } + public abstract resolveTextContent(resource: URI, options?: IResolveContentOptions): TPromise; public get onAutoSaveConfigurationChange(): Event { return this._onAutoSaveConfigurationChange.event; diff --git a/src/vs/workbench/parts/files/electron-browser/textFileServices.ts b/src/vs/workbench/parts/files/electron-browser/textFileServices.ts index c532efe8971..096665038cc 100644 --- a/src/vs/workbench/parts/files/electron-browser/textFileServices.ts +++ b/src/vs/workbench/parts/files/electron-browser/textFileServices.ts @@ -16,9 +16,9 @@ import {ConfirmResult} from 'vs/workbench/common/editor'; import {IEventService} from 'vs/platform/event/common/event'; import {TextFileService as AbstractTextFileService} from 'vs/workbench/parts/files/browser/textFileServices'; import {CACHE, TextFileEditorModel} from 'vs/workbench/parts/files/common/editors/textFileEditorModel'; -import {ITextFileOperationResult, AutoSaveMode} from 'vs/workbench/parts/files/common/files'; +import {ITextFileOperationResult, AutoSaveMode, IRawTextContent} from 'vs/workbench/parts/files/common/files'; import {IUntitledEditorService} from 'vs/workbench/services/untitled/common/untitledEditorService'; -import {IFileService} from 'vs/platform/files/common/files'; +import {IFileService, IResolveContentOptions} from 'vs/platform/files/common/files'; import {BinaryEditorModel} from 'vs/workbench/common/editor/binaryEditorModel'; import {IInstantiationService} from 'vs/platform/instantiation/common/instantiation'; import {IWorkspaceContextService} from 'vs/workbench/services/workspace/common/contextService'; @@ -30,6 +30,7 @@ import {IWorkbenchEditorService} from 'vs/workbench/services/editor/common/edito import {IWindowService} from 'vs/workbench/services/window/electron-browser/windowService'; import {IEditorGroupService} from 'vs/workbench/services/group/common/groupService'; import {IModelService} from 'vs/editor/common/services/modelService'; +import {ModelBuilder} from 'vs/editor/node/model/modelBuilder'; export class TextFileService extends AbstractTextFileService { @@ -63,6 +64,24 @@ export class TextFileService extends AbstractTextFileService { this.lifecycleService.onShutdown(this.onShutdown, this); } + public resolveTextContent(resource: URI, options?: IResolveContentOptions): TPromise { + return this.fileService.resolveStreamContent(resource, options).then((streamContent) => { + return ModelBuilder.fromStringStream(streamContent.value, this.modelService.getCreationOptions()).then((res) => { + let r: IRawTextContent = { + resource: streamContent.resource, + name: streamContent.name, + mtime: streamContent.mtime, + etag: streamContent.etag, + mime: streamContent.mime, + encoding: streamContent.encoding, + value: res.rawText, + valueLogicalHash: res.hash + }; + return r; + }); + }); + } + public beforeShutdown(): boolean | TPromise { // Dirty files need treatment on shutdown diff --git a/src/vs/workbench/workbench.main.ts b/src/vs/workbench/workbench.main.ts index f024a6a42a7..1c5d7b9ea56 100644 --- a/src/vs/workbench/workbench.main.ts +++ b/src/vs/workbench/workbench.main.ts @@ -54,7 +54,7 @@ import 'vs/workbench/parts/output/browser/output.contribution'; import 'vs/workbench/parts/terminal/electron-browser/terminal.contribution'; -import 'vs/workbench/browser/workbench'; +import 'vs/workbench/electron-browser/workbench'; import 'vs/workbench/parts/tasks/electron-browser/task.contribution'; -- GitLab