diff --git a/src/vs/workbench/browser/parts/editor/baseEditor.ts b/src/vs/workbench/browser/parts/editor/baseEditor.ts index 1b584afd8df..35fd51b7004 100644 --- a/src/vs/workbench/browser/parts/editor/baseEditor.ts +++ b/src/vs/workbench/browser/parts/editor/baseEditor.ts @@ -83,7 +83,7 @@ export abstract class BaseEditor extends Panel implements IEditor { /** * Called to create the editor in the parent builder. */ - public abstract createEditor(parent: Builder): void; + protected abstract createEditor(parent: Builder): void; /** * Overload this function to allow for passing in a position argument. @@ -99,7 +99,7 @@ export abstract class BaseEditor extends Panel implements IEditor { return promise; } - public setEditorVisible(visible: boolean, position: Position = null): void { + protected setEditorVisible(visible: boolean, position: Position = null): void { this._position = position; } diff --git a/src/vs/workbench/browser/parts/editor/binaryDiffEditor.ts b/src/vs/workbench/browser/parts/editor/binaryDiffEditor.ts index fef79c08e73..2a257d446f2 100644 --- a/src/vs/workbench/browser/parts/editor/binaryDiffEditor.ts +++ b/src/vs/workbench/browser/parts/editor/binaryDiffEditor.ts @@ -59,7 +59,7 @@ export class BinaryResourceDiffEditor extends BaseEditor implements IVerticalSas return this.input ? this.input.getName() : nls.localize('binaryDiffEditor', "Binary Diff Viewer"); } - public createEditor(parent: Builder): void { + protected createEditor(parent: Builder): void { // Left Container for Binary const leftBinaryContainerElement = document.createElement('div'); diff --git a/src/vs/workbench/browser/parts/editor/binaryEditor.ts b/src/vs/workbench/browser/parts/editor/binaryEditor.ts index e28966bcdeb..2d319de8156 100644 --- a/src/vs/workbench/browser/parts/editor/binaryEditor.ts +++ b/src/vs/workbench/browser/parts/editor/binaryEditor.ts @@ -44,7 +44,7 @@ export abstract class BaseBinaryResourceEditor extends BaseEditor { return this.input ? this.input.getName() : nls.localize('binaryEditor', "Binary Viewer"); } - public createEditor(parent: Builder): void { + protected createEditor(parent: Builder): void { // Container for Binary const binaryContainerElement = document.createElement('div'); diff --git a/src/vs/workbench/browser/parts/editor/sideBySideEditor.ts b/src/vs/workbench/browser/parts/editor/sideBySideEditor.ts index 45f8f19f20b..63b5dd54eed 100644 --- a/src/vs/workbench/browser/parts/editor/sideBySideEditor.ts +++ b/src/vs/workbench/browser/parts/editor/sideBySideEditor.ts @@ -39,7 +39,7 @@ export class SideBySideEditor extends BaseEditor { super(SideBySideEditor.ID, telemetryService); } - public createEditor(parent: Builder): void { + protected createEditor(parent: Builder): void { const parentElement = parent.getHTMLElement(); DOM.addClass(parentElement, 'side-by-side-editor'); this.createSash(parentElement); @@ -51,7 +51,7 @@ export class SideBySideEditor extends BaseEditor { .then(() => this.updateInput(oldInput, newInput, options)); } - public setEditorVisible(visible: boolean, position: Position): void { + protected setEditorVisible(visible: boolean, position: Position): void { if (this.masterEditor) { this.masterEditor.setVisible(visible, position); } diff --git a/src/vs/workbench/browser/parts/editor/textEditor.ts b/src/vs/workbench/browser/parts/editor/textEditor.ts index 18a16159854..6de3daf38e0 100644 --- a/src/vs/workbench/browser/parts/editor/textEditor.ts +++ b/src/vs/workbench/browser/parts/editor/textEditor.ts @@ -109,7 +109,7 @@ export abstract class BaseTextEditor extends BaseEditor { }; } - public createEditor(parent: Builder): void { + protected createEditor(parent: Builder): void { // Editor for Text this._editorContainer = parent; @@ -125,6 +125,16 @@ export abstract class BaseTextEditor extends BaseEditor { this.applyConfiguration(this.configurationService.getConfiguration()); } + /** + * This method creates and returns the text editor control to be used. Subclasses can override to + * provide their own editor control that should be used (e.g. a DiffEditor). + */ + protected createEditorControl(parent: Builder): IEditor { + + // Use a getter for the instantiation service since some subclasses might use scoped instantiation services + return this.instantiationService.createInstance(CodeEditor, parent.getHTMLElement(), this.getCodeEditorOptions()); + } + private onEditorFocusLost(): void { if (this.pendingAutoSave) { return; // save is already triggered @@ -158,23 +168,13 @@ export abstract class BaseTextEditor extends BaseEditor { }); } - /** - * This method creates and returns the text editor control to be used. Subclasses can override to - * provide their own editor control that should be used (e.g. a DiffEditor). - */ - public createEditorControl(parent: Builder): IEditor { - - // Use a getter for the instantiation service since some subclasses might use scoped instantiation services - return this.instantiationService.createInstance(CodeEditor, parent.getHTMLElement(), this.getCodeEditorOptions()); - } - public setInput(input: EditorInput, options?: EditorOptions): TPromise { return super.setInput(input, options).then(() => { this.editorControl.updateOptions(this.getCodeEditorOptions()); // support input specific editor options }); } - public setEditorVisible(visible: boolean, position: Position = null): void { + protected setEditorVisible(visible: boolean, position: Position = null): void { // Pass on to Editor if (visible) { diff --git a/src/vs/workbench/parts/html/browser/htmlPreviewPart.ts b/src/vs/workbench/parts/html/browser/htmlPreviewPart.ts index 9b70ec70473..a87a915d26b 100644 --- a/src/vs/workbench/parts/html/browser/htmlPreviewPart.ts +++ b/src/vs/workbench/parts/html/browser/htmlPreviewPart.ts @@ -72,7 +72,7 @@ export class HtmlPreviewPart extends BaseEditor { super.dispose(); } - public createEditor(parent: Builder): void { + protected createEditor(parent: Builder): void { this._container = document.createElement('div'); this._container.style.paddingLeft = '20px'; parent.getHTMLElement().appendChild(this._container); @@ -101,7 +101,7 @@ export class HtmlPreviewPart extends BaseEditor { super.changePosition(position); } - public setEditorVisible(visible: boolean, position?: Position): void { + protected setEditorVisible(visible: boolean, position?: Position): void { this._doSetVisible(visible); super.setEditorVisible(visible, position); } diff --git a/src/vs/workbench/parts/output/browser/outputPanel.ts b/src/vs/workbench/parts/output/browser/outputPanel.ts index 3967a3dae21..34ac7138f21 100644 --- a/src/vs/workbench/parts/output/browser/outputPanel.ts +++ b/src/vs/workbench/parts/output/browser/outputPanel.ts @@ -96,7 +96,7 @@ export class OutputPanel extends TextResourceEditor { return super.setInput(input, options).then(() => this.revealLastLine()); } - public createEditor(parent: Builder): void { + protected createEditor(parent: Builder): void { // First create the scoped instantation service and only then construct the editor using the scoped service const scopedContextKeyService = this.contextKeyService.createScoped(parent.getHTMLElement());