From 4e9cc6982686734cba0022ad1a4b476bd45a7989 Mon Sep 17 00:00:00 2001 From: Benjamin Pasero Date: Fri, 13 May 2016 12:15:50 +0200 Subject: [PATCH] untitled and created files are pinned by default --- src/vs/workbench/common/editor.ts | 2 +- .../parts/files/browser/editors/textFileEditor.ts | 8 ++++---- src/vs/workbench/parts/files/browser/fileActions.ts | 5 +---- .../files/electron-browser/electronFileTracker.ts | 11 ----------- 4 files changed, 6 insertions(+), 20 deletions(-) diff --git a/src/vs/workbench/common/editor.ts b/src/vs/workbench/common/editor.ts index 8f94b6a03eb..934c224a61c 100644 --- a/src/vs/workbench/common/editor.ts +++ b/src/vs/workbench/common/editor.ts @@ -333,7 +333,7 @@ export class TextEditorOptions extends EditorOptions { public static from(input: IResourceInput): TextEditorOptions { let options: TextEditorOptions = null; if (input && input.options) { - if (input.options.selection || input.options.forceOpen || input.options.preserveFocus) { + if (input.options.selection || input.options.forceOpen || input.options.preserveFocus || input.options.pinned || typeof input.options.index === 'number') { options = new TextEditorOptions(); } diff --git a/src/vs/workbench/parts/files/browser/editors/textFileEditor.ts b/src/vs/workbench/parts/files/browser/editors/textFileEditor.ts index 2660f319d33..db6fa113c7a 100644 --- a/src/vs/workbench/parts/files/browser/editors/textFileEditor.ts +++ b/src/vs/workbench/parts/files/browser/editors/textFileEditor.ts @@ -184,13 +184,13 @@ export class TextFileEditor extends BaseTextEditor { new Action('workbench.files.action.createMissingFile', nls.localize('createFile', "Create File"), null, true, () => { return this.fileService.updateContent((input).getResource(), '').then(() => { - // Add to working files - this.textFileService.getWorkingFilesModel().addEntry((input).getResource()); - // Open return this.editorService.openEditor({ resource: (input).getResource(), - mime: MIME_TEXT + mime: MIME_TEXT, + options: { + pinned: true // new file gets pinned by default + } }); }); }) diff --git a/src/vs/workbench/parts/files/browser/fileActions.ts b/src/vs/workbench/parts/files/browser/fileActions.ts index cd31a54af13..8a7869c30b1 100644 --- a/src/vs/workbench/parts/files/browser/fileActions.ts +++ b/src/vs/workbench/parts/files/browser/fileActions.ts @@ -578,10 +578,7 @@ export class GlobalNewUntitledFileAction extends Action { public run(): TPromise { let input = this.untitledEditorService.createOrGet(); - // Make sure this untitled buffer shows up in working files set - this.textFileService.getWorkingFilesModel().addEntry(input.getResource()); - - return this.editorService.openEditor(input); + return this.editorService.openEditor(input, EditorOptions.create({ pinned: true })); // untitled are always pinned } } diff --git a/src/vs/workbench/parts/files/electron-browser/electronFileTracker.ts b/src/vs/workbench/parts/files/electron-browser/electronFileTracker.ts index d90f64c0095..cd1c25727d8 100644 --- a/src/vs/workbench/parts/files/electron-browser/electronFileTracker.ts +++ b/src/vs/workbench/parts/files/electron-browser/electronFileTracker.ts @@ -6,7 +6,6 @@ 'use strict'; import {TPromise} from 'vs/base/common/winjs.base'; -import paths = require('vs/base/common/paths'); import {IWorkbenchContribution} from 'vs/workbench/common/contributions'; import {TextFileChangeEvent, EventType as FileEventType, ITextFileService, AutoSaveMode, VIEWLET_ID} from 'vs/workbench/parts/files/common/files'; import {IFileService} from 'vs/platform/files/common/files'; @@ -123,16 +122,6 @@ export class FileTracker implements IWorkbenchContribution { return viewletPromise.then(() => { - // Out of workspace files get added right away to working files model - resources.forEach((fileToOpen) => { - let resource = fileToOpen.resource; - let workspace = this.contextService.getWorkspace(); - - if (!workspace || !paths.isEqualOrParent(resource.fsPath, workspace.resource.fsPath)) { - this.textFileService.getWorkingFilesModel().addEntry(resource); - } - }); - // In diffMode we open 2 resources as diff if (diffMode) { return TPromise.join(resources.map(f => this.editorService.inputToType(f))).then((inputs: EditorInput[]) => { -- GitLab