提交 fd50f1fa 编写于 作者: B Benjamin Pasero

grid - open empty group instead of artifically copying over editor from active group

上级 bc57e564
......@@ -42,43 +42,23 @@ export class ExecuteCommandAction extends Action {
}
}
export class BaseSplitEditorGroupAction extends Action {
constructor(
id: string,
label: string,
clazz: string,
protected direction: GroupDirection,
private editorGroupService: IEditorGroupsService
) {
super(id, label, clazz);
}
public run(context?: IEditorIdentifier & { event?: Event }): TPromise<any> {
this.splitEditor(context ? context.groupId : void 0);
return TPromise.as(true);
}
protected splitEditor(groupId?: number): void {
splitEditor(this.editorGroupService, this.direction, { groupId });
}
}
export class SplitEditorAction extends BaseSplitEditorGroupAction {
export class SplitEditorAction extends Action {
public static readonly ID = 'workbench.action.splitEditor';
public static readonly LABEL = nls.localize('splitEditor', "Split Editor");
private toDispose: IDisposable[] = [];
private direction: GroupDirection;
constructor(
id: string,
label: string,
@IEditorGroupsService editorGroupService: IEditorGroupsService,
@IEditorGroupsService private editorGroupService: IEditorGroupsService,
@IConfigurationService private configurationService: IConfigurationService
) {
super(id, label, null, preferredSideBySideGroupDirection(configurationService), editorGroupService);
super(id, label);
this.direction = preferredSideBySideGroupDirection(configurationService);
this.registerListeners();
}
......@@ -92,7 +72,7 @@ export class SplitEditorAction extends BaseSplitEditorGroupAction {
}
public run(context?: IEditorIdentifier): TPromise<any> {
this.splitEditor(context ? context.groupId : void 0);
splitEditor(this.editorGroupService, this.direction, context);
return TPromise.as(true);
}
......
......@@ -429,9 +429,7 @@ function registerOpenEditorAtIndexCommands(): void {
function registerFocusEditorGroupAtIndexCommands(): void {
// Keybindings to focus a specific group (2-8) in the editor area
for (let i = 1; i < 8; i++) {
const groupIndex = i;
for (let groupIndex = 1; groupIndex < 8; groupIndex++) {
KeybindingsRegistry.registerCommandAndKeybindingRule({
id: toCommandId(groupIndex),
weight: KeybindingsRegistry.WEIGHT.workbenchContrib(),
......@@ -459,12 +457,6 @@ function registerFocusEditorGroupAtIndexCommands(): void {
const lastGroup = editorGroupService.findGroup({ location: GroupLocation.LAST });
const newGroup = editorGroupService.addGroup(lastGroup, direction);
// To keep backwards compatibility (pre-grid) we automatically copy the active editor
// of the last group over to the new group as long as it supports to be split.
if (lastGroup.activeEditor && (lastGroup.activeEditor as EditorInput).supportsSplitEditor()) {
lastGroup.copyEditor(lastGroup.activeEditor, newGroup);
}
// Focus
newGroup.focus();
}
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册