mirror of
https://github.com/Microsoft/vscode
synced 2024-09-17 17:46:22 +00:00
parent
adefb9aae2
commit
f232fdac98
|
@ -261,12 +261,11 @@ export class ShowHideBase extends Action2 {
|
|||
menu: [
|
||||
{
|
||||
id: MenuId.EditorTitle,
|
||||
when: ctxIsMergeEditor,
|
||||
when: ContextKeyExpr.and(ctxIsMergeEditor, ctxMergeEditorLayout.isEqualTo('columns')),
|
||||
group: '2_merge',
|
||||
order: 9,
|
||||
},
|
||||
],
|
||||
precondition: ctxIsMergeEditor,
|
||||
]
|
||||
});
|
||||
}
|
||||
|
||||
|
@ -278,31 +277,58 @@ export class ShowHideBase extends Action2 {
|
|||
}
|
||||
}
|
||||
|
||||
export class ShowHideAtTopBase extends Action2 {
|
||||
export class ShowHideTopBase extends Action2 {
|
||||
constructor() {
|
||||
super({
|
||||
id: 'merge.showBaseAtTop',
|
||||
id: 'merge.showBaseTop',
|
||||
title: {
|
||||
value: localize('layout.showBaseAtTop', 'Show Base At Top'),
|
||||
original: 'Show Base At Top',
|
||||
value: localize('layout.showBaseTop', 'Show Base Top'),
|
||||
original: 'Show Base Top',
|
||||
},
|
||||
toggled: ctxMergeEditorShowBaseAtTop.isEqualTo(true),
|
||||
toggled: ContextKeyExpr.and(ctxMergeEditorShowBase, ctxMergeEditorShowBaseAtTop),
|
||||
menu: [
|
||||
{
|
||||
id: MenuId.EditorTitle,
|
||||
when: ctxIsMergeEditor,
|
||||
when: ContextKeyExpr.and(ctxIsMergeEditor, ctxMergeEditorLayout.isEqualTo('mixed')),
|
||||
group: '2_merge',
|
||||
order: 10,
|
||||
},
|
||||
],
|
||||
precondition: ContextKeyExpr.and(ctxIsMergeEditor, ctxMergeEditorShowBase, ctxMergeEditorLayout.isEqualTo('mixed')),
|
||||
});
|
||||
}
|
||||
|
||||
run(accessor: ServicesAccessor): void {
|
||||
const { activeEditorPane } = accessor.get(IEditorService);
|
||||
if (activeEditorPane instanceof MergeEditor) {
|
||||
activeEditorPane.toggleShowBaseAtTop();
|
||||
activeEditorPane.toggleShowBaseTop();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
export class ShowHideCenterBase extends Action2 {
|
||||
constructor() {
|
||||
super({
|
||||
id: 'merge.showBaseCenter',
|
||||
title: {
|
||||
value: localize('layout.showBaseCenter', 'Show Base Center'),
|
||||
original: 'Show Base Center',
|
||||
},
|
||||
toggled: ContextKeyExpr.and(ctxMergeEditorShowBase, ctxMergeEditorShowBaseAtTop.negate()),
|
||||
menu: [
|
||||
{
|
||||
id: MenuId.EditorTitle,
|
||||
when: ContextKeyExpr.and(ctxIsMergeEditor, ctxMergeEditorLayout.isEqualTo('mixed')),
|
||||
group: '2_merge',
|
||||
order: 11,
|
||||
},
|
||||
],
|
||||
});
|
||||
}
|
||||
|
||||
run(accessor: ServicesAccessor): void {
|
||||
const { activeEditorPane } = accessor.get(IEditorService);
|
||||
if (activeEditorPane instanceof MergeEditor) {
|
||||
activeEditorPane.toggleShowBaseCenter();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -11,7 +11,12 @@ import { Registry } from 'vs/platform/registry/common/platform';
|
|||
import { EditorPaneDescriptor, IEditorPaneRegistry } from 'vs/workbench/browser/editor';
|
||||
import { Extensions as WorkbenchExtensions, IWorkbenchContributionsRegistry } from 'vs/workbench/common/contributions';
|
||||
import { EditorExtensions, IEditorFactoryRegistry } from 'vs/workbench/common/editor';
|
||||
import { AcceptAllInput1, AcceptAllInput2, AcceptMerge, CompareInput1WithBaseCommand, CompareInput2WithBaseCommand, GoToNextUnhandledConflict, GoToPreviousUnhandledConflict, OpenBaseFile, OpenMergeEditor, OpenResultResource, ResetToBaseAndAutoMergeCommand, SetColumnLayout, SetMixedLayout, ShowHideAtTopBase, ShowHideBase, ShowNonConflictingChanges, ToggleActiveConflictInput1, ToggleActiveConflictInput2 } from 'vs/workbench/contrib/mergeEditor/browser/commands/commands';
|
||||
import {
|
||||
AcceptAllInput1, AcceptAllInput2, AcceptMerge, CompareInput1WithBaseCommand,
|
||||
CompareInput2WithBaseCommand, GoToNextUnhandledConflict, GoToPreviousUnhandledConflict, OpenBaseFile, OpenMergeEditor,
|
||||
OpenResultResource, ResetToBaseAndAutoMergeCommand, SetColumnLayout, SetMixedLayout, ShowHideTopBase, ShowHideCenterBase, ShowHideBase,
|
||||
ShowNonConflictingChanges, ToggleActiveConflictInput1, ToggleActiveConflictInput2
|
||||
} from 'vs/workbench/contrib/mergeEditor/browser/commands/commands';
|
||||
import { MergeEditorCopyContentsToJSON, MergeEditorLoadContentsFromFolder, MergeEditorSaveContentsToFolder } from 'vs/workbench/contrib/mergeEditor/browser/commands/devCommands';
|
||||
import { MergeEditorInput } from 'vs/workbench/contrib/mergeEditor/browser/mergeEditorInput';
|
||||
import { MergeEditor, MergeEditorOpenHandlerContribution, MergeEditorResolverContribution } from 'vs/workbench/contrib/mergeEditor/browser/view/mergeEditor';
|
||||
|
@ -51,11 +56,12 @@ Registry.as<IConfigurationRegistry>(Extensions.Configuration).registerConfigurat
|
|||
registerAction2(OpenResultResource);
|
||||
registerAction2(SetMixedLayout);
|
||||
registerAction2(SetColumnLayout);
|
||||
registerAction2(ShowHideBase);
|
||||
registerAction2(ShowHideAtTopBase);
|
||||
registerAction2(OpenMergeEditor);
|
||||
registerAction2(OpenBaseFile);
|
||||
registerAction2(ShowNonConflictingChanges);
|
||||
registerAction2(ShowHideBase);
|
||||
registerAction2(ShowHideTopBase);
|
||||
registerAction2(ShowHideCenterBase);
|
||||
|
||||
registerAction2(GoToNextUnhandledConflict);
|
||||
registerAction2(GoToPreviousUnhandledConflict);
|
||||
|
|
|
@ -607,10 +607,21 @@ export class MergeEditor extends AbstractTextEditor<IMergeEditorViewState> {
|
|||
});
|
||||
}
|
||||
|
||||
public toggleShowBaseAtTop(): void {
|
||||
public toggleShowBaseTop(): void {
|
||||
const showBaseTop = this._layoutMode.value.showBase && this._layoutMode.value.showBaseAtTop;
|
||||
this.setLayout({
|
||||
...this._layoutMode.value,
|
||||
showBaseAtTop: !this._layoutMode.value.showBaseAtTop,
|
||||
showBaseAtTop: true,
|
||||
showBase: !showBaseTop,
|
||||
});
|
||||
}
|
||||
|
||||
public toggleShowBaseCenter(): void {
|
||||
const showBaseCenter = this._layoutMode.value.showBase && !this._layoutMode.value.showBaseAtTop;
|
||||
this.setLayout({
|
||||
...this._layoutMode.value,
|
||||
showBaseAtTop: false,
|
||||
showBase: !showBaseCenter,
|
||||
});
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue