Merge from vscode 817eb6b0c720a4ecbc13c020afbbebfed667aa09 (#7356)

This commit is contained in:
Anthony Dresser
2019-09-24 21:36:17 -07:00
committed by GitHub
parent a29ae4d3b9
commit 6a6048d40f
541 changed files with 7045 additions and 7287 deletions

View File

@@ -14,7 +14,6 @@ import { Registry } from 'vs/platform/registry/common/platform';
import { KeyCode, KeyMod } from 'vs/base/common/keyCodes';
import { IsFullscreenContext, IsDevelopmentContext, IsMacNativeContext } from 'vs/workbench/browser/contextkeys';
import { IWorkbenchActionRegistry, Extensions } from 'vs/workbench/common/actions';
import { IWorkbenchLayoutService } from 'vs/workbench/services/layout/browser/layoutService';
import { KeybindingsRegistry, KeybindingWeight } from 'vs/platform/keybinding/common/keybindingsRegistry';
import { IQuickInputButton, IQuickInputService, IQuickPickSeparator } from 'vs/platform/quickinput/common/quickInput';
import { IWorkspaceContextService } from 'vs/platform/workspace/common/workspace';
@@ -31,6 +30,7 @@ import { IKeyMods } from 'vs/base/parts/quickopen/common/quickOpen';
import { isMacintosh } from 'vs/base/common/platform';
import { ContextKeyExpr } from 'vs/platform/contextkey/common/contextkey';
import { inQuickOpenContext, getQuickNavigateHandler } from 'vs/workbench/browser/parts/quickopen/quickopen';
import { IHostService } from 'vs/workbench/services/host/browser/host';
export const inRecentFilesPickerContextKey = 'inRecentFilesPicker';
@@ -195,15 +195,13 @@ class ToggleFullScreenAction extends Action {
constructor(
id: string,
label: string,
@IWindowService private readonly windowService: IWindowService,
@IWorkbenchLayoutService private readonly layoutService: IWorkbenchLayoutService) {
@IHostService private readonly hostService: IHostService
) {
super(id, label);
}
run(): Promise<void> {
const container = this.layoutService.getWorkbenchElement();
return this.windowService.toggleFullScreen(container);
return this.hostService.toggleFullScreen();
}
}
@@ -215,13 +213,13 @@ export class ReloadWindowAction extends Action {
constructor(
id: string,
label: string,
@IWindowService private readonly windowService: IWindowService
@IHostService private readonly hostService: IHostService
) {
super(id, label);
}
async run(): Promise<boolean> {
await this.windowService.reloadWindow();
await this.hostService.reload();
return true;
}
@@ -245,11 +243,30 @@ class ShowAboutDialogAction extends Action {
}
}
export class NewWindowAction extends Action {
static readonly ID = 'workbench.action.newWindow';
static LABEL = nls.localize('newWindow', "New Window");
constructor(
id: string,
label: string,
@IHostService private readonly hostService: IHostService
) {
super(id, label);
}
run(): Promise<void> {
return this.hostService.openEmptyWindow();
}
}
const registry = Registry.as<IWorkbenchActionRegistry>(Extensions.WorkbenchActions);
// --- Actions Registration
const fileCategory = nls.localize('file', "File");
registry.registerWorkbenchAction(new SyncActionDescriptor(NewWindowAction, NewWindowAction.ID, NewWindowAction.LABEL, { primary: KeyMod.CtrlCmd | KeyMod.Shift | KeyCode.KEY_N }), 'New Window');
registry.registerWorkbenchAction(new SyncActionDescriptor(QuickOpenRecentAction, QuickOpenRecentAction.ID, QuickOpenRecentAction.LABEL), 'File: Quick Open Recent...', fileCategory);
registry.registerWorkbenchAction(new SyncActionDescriptor(OpenRecentAction, OpenRecentAction.ID, OpenRecentAction.LABEL, { primary: KeyMod.CtrlCmd | KeyCode.KEY_R, mac: { primary: KeyMod.WinCtrl | KeyCode.KEY_R } }), 'File: Open Recent...', fileCategory);
@@ -295,6 +312,15 @@ KeybindingsRegistry.registerKeybindingRule({
// --- Menu Registration
MenuRegistry.appendMenuItem(MenuId.MenubarFileMenu, {
group: '1_new',
command: {
id: NewWindowAction.ID,
title: nls.localize({ key: 'miNewWindow', comment: ['&& denotes a mnemonic'] }, "New &&Window")
},
order: 2
});
MenuRegistry.appendMenuItem(MenuId.MenubarFileMenu, {
title: nls.localize({ key: 'miOpenRecent', comment: ['&& denotes a mnemonic'] }, "Open &&Recent"),
submenu: MenuId.MenubarRecentMenu,