diff --git a/src/vs/workbench/api/node/extHostEditors.ts b/src/vs/workbench/api/node/extHostEditors.ts index 53b95c9d389..764df4f6792 100644 --- a/src/vs/workbench/api/node/extHostEditors.ts +++ b/src/vs/workbench/api/node/extHostEditors.ts @@ -16,6 +16,7 @@ import {Selection, Range, Position, EditorOptions, EndOfLine} from './extHostTyp import {ISingleEditOperation, ISelection, IRange, IEditor, EditorType, ICommonCodeEditor, ICommonDiffEditor, IDecorationRenderOptions, IRangeWithMessage} from 'vs/editor/common/editorCommon'; import {ICodeEditorService} from 'vs/editor/common/services/codeEditorService'; import {IWorkbenchEditorService} from 'vs/workbench/services/editor/common/editorService'; +import {IEditorGroupService} from 'vs/workbench/services/group/common/groupService'; import {Position as EditorPosition} from 'vs/platform/editor/common/editor'; import {IModelService} from 'vs/editor/common/services/modelService'; import {MainThreadEditorsTracker, TextEditorRevealType, MainThreadTextEditor, ITextEditorConfigurationUpdate, IResolvedTextEditorConfiguration} from 'vs/workbench/api/node/mainThreadEditors'; @@ -469,6 +470,7 @@ export class MainThreadEditors { constructor( @IThreadService threadService: IThreadService, @IWorkbenchEditorService workbenchEditorService: IWorkbenchEditorService, + @IEditorGroupService editorGroupService: IEditorGroupService, @ITelemetryService telemetryService: ITelemetryService, @ICodeEditorService editorService: ICodeEditorService, @IEventService eventService: IEventService, @@ -493,7 +495,7 @@ export class MainThreadEditors { this._toDispose.push(this._editorTracker.onDidUpdateTextEditors(() => this._updateActiveAndVisibleTextEditors())); this._toDispose.push(this._editorTracker.onChangedFocusedTextEditor((focusedTextEditorId) => this._updateActiveAndVisibleTextEditors())); this._toDispose.push(workbenchEditorService.onEditorsChanged(() => this._updateActiveAndVisibleTextEditors())); - this._toDispose.push(workbenchEditorService.onEditorsMoved(() => this._updateActiveAndVisibleTextEditors())); + this._toDispose.push(editorGroupService.onEditorsMoved(() => this._updateActiveAndVisibleTextEditors())); } public dispose(): void { diff --git a/src/vs/workbench/services/editor/browser/editorService.ts b/src/vs/workbench/services/editor/browser/editorService.ts index a2ab820ba3f..7c89611f048 100644 --- a/src/vs/workbench/services/editor/browser/editorService.ts +++ b/src/vs/workbench/services/editor/browser/editorService.ts @@ -30,7 +30,6 @@ export interface IEditorPart { // Events onEditorsChanged: Event; onEditorOpening: Event; - onEditorsMoved: Event; onEditorOpenFail: Event; // Methods @@ -70,10 +69,6 @@ export class WorkbenchEditorService implements IWorkbenchEditorService { return this.editorPart.onEditorOpening; } - public get onEditorsMoved(): Event { - return this.editorPart.onEditorsMoved; - } - public get onEditorOpenFail(): Event { return this.editorPart.onEditorOpenFail; } diff --git a/src/vs/workbench/services/editor/common/editorService.ts b/src/vs/workbench/services/editor/common/editorService.ts index 0a8c1e97eef..a47b06bb5d7 100644 --- a/src/vs/workbench/services/editor/common/editorService.ts +++ b/src/vs/workbench/services/editor/common/editorService.ts @@ -35,11 +35,6 @@ export interface IWorkbenchEditorService extends IEditorService { */ onEditorOpening: Event; - /** - * Emitted when a editors are moved to another position. - */ - onEditorsMoved: Event; - /** * Emitted when opening an editor fails. */ diff --git a/src/vs/workbench/services/group/common/groupService.ts b/src/vs/workbench/services/group/common/groupService.ts index 87c5864fbf6..3cf2d6faaf9 100644 --- a/src/vs/workbench/services/group/common/groupService.ts +++ b/src/vs/workbench/services/group/common/groupService.ts @@ -8,6 +8,7 @@ import {createDecorator, ServiceIdentifier} from 'vs/platform/instantiation/common/instantiation'; import {Position, IEditorInput} from 'vs/platform/editor/common/editor'; import {IEditorStacksModel} from 'vs/workbench/common/editor'; +import Event from 'vs/base/common/event'; export enum GroupArrangement { MINIMIZE_OTHERS, @@ -23,6 +24,11 @@ export var IEditorGroupService = createDecorator('editorGro export interface IEditorGroupService { serviceId: ServiceIdentifier; + /** + * Emitted when a editors are moved to another position. + */ + onEditorsMoved: Event; + /** * Keyboard focus the editor group at the provided position. */ diff --git a/src/vs/workbench/test/browser/services.test.ts b/src/vs/workbench/test/browser/services.test.ts index 740f8369b77..ecf3d46f81e 100644 --- a/src/vs/workbench/test/browser/services.test.ts +++ b/src/vs/workbench/test/browser/services.test.ts @@ -74,10 +74,6 @@ class TestEditorPart implements IEditorPart { return null; } - public get onEditorsMoved(): Event { - return null; - } - public get onEditorOpening(): Event { return null; } diff --git a/src/vs/workbench/test/common/servicesTestUtils.ts b/src/vs/workbench/test/common/servicesTestUtils.ts index 641a86f8f64..7cdcf9e7502 100644 --- a/src/vs/workbench/test/common/servicesTestUtils.ts +++ b/src/vs/workbench/test/common/servicesTestUtils.ts @@ -312,8 +312,11 @@ export class TestEditorGroupService implements IEditorGroupService { public serviceId = IEditorGroupService; private stacksModel: EditorStacksModel; + private _onEditorsMoved: Emitter; constructor(callback?: (method: string) => void) { + this._onEditorsMoved = new Emitter(); + let services = new ServiceCollection(); services.set(IStorageService, new TestStorageService()); @@ -326,6 +329,10 @@ export class TestEditorGroupService implements IEditorGroupService { this.stacksModel = inst.createInstance(EditorStacksModel); } + public get onEditorsMoved(): Event { + return this._onEditorsMoved.event; + } + public focusGroup(position: Position): void { } @@ -366,7 +373,6 @@ export class TestEditorService implements WorkbenchEditorService.IWorkbenchEdito private callback: (method: string) => void; private _onEditorsChanged: Emitter; - private _onEditorsMoved: Emitter; private _onEditorOpening: Emitter; private _onEditorOpenFail: Emitter; @@ -375,7 +381,6 @@ export class TestEditorService implements WorkbenchEditorService.IWorkbenchEdito this._onEditorsChanged = new Emitter(); this._onEditorOpening = new Emitter(); - this._onEditorsMoved = new Emitter(); this._onEditorOpenFail = new Emitter(); } @@ -391,10 +396,6 @@ export class TestEditorService implements WorkbenchEditorService.IWorkbenchEdito return this._onEditorOpening.event; } - public get onEditorsMoved(): Event { - return this._onEditorsMoved.event; - } - public get onEditorOpenFail(): Event { return this._onEditorOpenFail.event; }