diff --git a/src/vs/platform/keybinding/common/keybindingResolver.ts b/src/vs/platform/keybinding/common/keybindingResolver.ts index 00b98179c8583de4512377dbde08611b55f731a7..ca31e62e54e01a1b856afcc5dd7c2b1c430ea207 100644 --- a/src/vs/platform/keybinding/common/keybindingResolver.ts +++ b/src/vs/platform/keybinding/common/keybindingResolver.ts @@ -3,9 +3,6 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import { isNonEmptyArray } from 'vs/base/common/arrays'; -import { isIMenuItem, MenuId, MenuRegistry } from 'vs/platform/actions/common/actions'; -import { CommandsRegistry, ICommandHandlerDescription } from 'vs/platform/commands/common/commands'; import { IContext, ContextKeyExpression, ContextKeyExprType } from 'vs/platform/contextkey/common/contextkey'; import { ResolvedKeybindingItem } from 'vs/platform/keybinding/common/resolvedKeybindingItem'; @@ -340,44 +337,6 @@ export class KeybindingResolver { } return rules.evaluate(context); } - - public static getAllUnboundCommands(boundCommands: Map): string[] { - const unboundCommands: string[] = []; - const seenMap: Map = new Map(); - const addCommand = (id: string, includeCommandWithArgs: boolean) => { - if (seenMap.has(id)) { - return; - } - seenMap.set(id, true); - if (id[0] === '_' || id.indexOf('vscode.') === 0) { // private command - return; - } - if (boundCommands.get(id) === true) { - return; - } - if (!includeCommandWithArgs) { - const command = CommandsRegistry.getCommand(id); - if (command && typeof command.description === 'object' - && isNonEmptyArray((command.description).args)) { // command with args - return; - } - } - unboundCommands.push(id); - }; - - // Add all commands from Command Palette - for (const menuItem of MenuRegistry.getMenuItems(MenuId.CommandPalette)) { - if (isIMenuItem(menuItem)) { - addCommand(menuItem.command.id, true); - } - } - - for (const id of CommandsRegistry.getCommands().keys()) { - addCommand(id, false); - } - - return unboundCommands; - } } function printWhenExplanation(when: ContextKeyExpression | undefined): string { diff --git a/src/vs/workbench/contrib/preferences/browser/keybindingsEditor.ts b/src/vs/workbench/contrib/preferences/browser/keybindingsEditor.ts index 7b7c3dd59ed2aa3fa4e934e7d6c402f6c7939ca0..c68ddbf3a884d88171b853d5248a9cab5625f252 100644 --- a/src/vs/workbench/contrib/preferences/browser/keybindingsEditor.ts +++ b/src/vs/workbench/contrib/preferences/browser/keybindingsEditor.ts @@ -18,7 +18,7 @@ import { EditorPane } from 'vs/workbench/browser/parts/editor/editorPane'; import { EditorOptions, IEditorOpenContext } from 'vs/workbench/common/editor'; import { ITelemetryService } from 'vs/platform/telemetry/common/telemetry'; import { IClipboardService } from 'vs/platform/clipboard/common/clipboardService'; -import { KeybindingsEditorModel, IKeybindingItemEntry, IListEntry, KEYBINDING_ENTRY_TEMPLATE_ID } from 'vs/workbench/services/preferences/common/keybindingsEditorModel'; +import { KeybindingsEditorModel, KEYBINDING_ENTRY_TEMPLATE_ID } from 'vs/workbench/services/preferences/browser/keybindingsEditorModel'; import { IInstantiationService } from 'vs/platform/instantiation/common/instantiation'; import { IKeybindingService, IUserFriendlyKeybinding } from 'vs/platform/keybinding/common/keybinding'; import { DefineKeybindingWidget, KeybindingsSearchWidget } from 'vs/workbench/contrib/preferences/browser/keybindingWidgets'; @@ -35,7 +35,7 @@ import { IEditorService } from 'vs/workbench/services/editor/common/editorServic import { EditorExtensionsRegistry } from 'vs/editor/browser/editorExtensions'; import { WorkbenchList } from 'vs/platform/list/browser/listService'; import { INotificationService } from 'vs/platform/notification/common/notification'; -import { KeybindingsEditorInput } from 'vs/workbench/services/preferences/common/preferencesEditorInput'; +import { KeybindingsEditorInput } from 'vs/workbench/services/preferences/browser/preferencesEditorInput'; import { CancellationToken } from 'vs/base/common/cancellation'; import { attachStylerCallback, attachInputBoxStyler, attachCheckboxStyler } from 'vs/platform/theme/common/styler'; import { IStorageService, StorageScope, StorageTarget } from 'vs/platform/storage/common/storage'; @@ -46,7 +46,7 @@ import { IListAccessibilityProvider } from 'vs/base/browser/ui/list/listWidget'; import { Color, RGBA } from 'vs/base/common/color'; import { WORKBENCH_BACKGROUND } from 'vs/workbench/common/theme'; import { IBaseActionViewItemOptions } from 'vs/base/browser/ui/actionbar/actionViewItems'; -import { IKeybindingsEditorPane } from 'vs/workbench/services/preferences/common/preferences'; +import { IKeybindingItemEntry, IKeybindingsEditorPane, IListEntry } from 'vs/workbench/services/preferences/common/preferences'; import { keybindingsRecordKeysIcon, keybindingsSortIcon, keybindingsAddIcon, preferencesClearInputIcon, keybindingsEditIcon } from 'vs/workbench/contrib/preferences/browser/preferencesIcons'; const $ = DOM.$; diff --git a/src/vs/workbench/contrib/preferences/browser/preferences.contribution.ts b/src/vs/workbench/contrib/preferences/browser/preferences.contribution.ts index 496c76c0f663e5eadee7adfb928272894270597c..0322320a77a75b94564e1c89ad603363af036793 100644 --- a/src/vs/workbench/contrib/preferences/browser/preferences.contribution.ts +++ b/src/vs/workbench/contrib/preferences/browser/preferences.contribution.ts @@ -39,7 +39,7 @@ import { IEditorService } from 'vs/workbench/services/editor/common/editorServic import { IWorkbenchEnvironmentService } from 'vs/workbench/services/environment/common/environmentService'; import { IExtensionService } from 'vs/workbench/services/extensions/common/extensions'; import { IPreferencesService } from 'vs/workbench/services/preferences/common/preferences'; -import { DefaultPreferencesEditorInput, KeybindingsEditorInput, PreferencesEditorInput, SettingsEditor2Input } from 'vs/workbench/services/preferences/common/preferencesEditorInput'; +import { DefaultPreferencesEditorInput, KeybindingsEditorInput, PreferencesEditorInput, SettingsEditor2Input } from 'vs/workbench/services/preferences/browser/preferencesEditorInput'; import { preferencesOpenSettingsIcon } from 'vs/workbench/contrib/preferences/browser/preferencesIcons'; const SETTINGS_EDITOR_COMMAND_SEARCH = 'settings.action.search'; diff --git a/src/vs/workbench/contrib/preferences/browser/preferencesEditor.ts b/src/vs/workbench/contrib/preferences/browser/preferencesEditor.ts index 8f471950684109422fd91506805e561fe15d693b..8e839d2e3c9e193f59e939167be8763d0a398591 100644 --- a/src/vs/workbench/contrib/preferences/browser/preferencesEditor.ts +++ b/src/vs/workbench/contrib/preferences/browser/preferencesEditor.ts @@ -49,7 +49,7 @@ import { CONTEXT_SETTINGS_EDITOR, CONTEXT_SETTINGS_JSON_EDITOR, CONTEXT_SETTINGS import { IEditorGroup, IEditorGroupsService } from 'vs/workbench/services/editor/common/editorGroupsService'; import { IEditorService } from 'vs/workbench/services/editor/common/editorService'; import { IFilterResult, IPreferencesService, ISetting, ISettingsEditorModel, ISettingsGroup, SettingsEditorOptions } from 'vs/workbench/services/preferences/common/preferences'; -import { DefaultPreferencesEditorInput, PreferencesEditorInput } from 'vs/workbench/services/preferences/common/preferencesEditorInput'; +import { DefaultPreferencesEditorInput, PreferencesEditorInput } from 'vs/workbench/services/preferences/browser/preferencesEditorInput'; import { DefaultSettingsEditorModel, SettingsEditorModel } from 'vs/workbench/services/preferences/common/preferencesModels'; export class PreferencesEditor extends EditorPane { diff --git a/src/vs/workbench/contrib/preferences/browser/settingsEditor2.ts b/src/vs/workbench/contrib/preferences/browser/settingsEditor2.ts index 7abb3fca76f1b60251ebc0bff3935d3ad7d68fcf..676ccc6fe62c5e3b6058863ab3429236a3317bda 100644 --- a/src/vs/workbench/contrib/preferences/browser/settingsEditor2.ts +++ b/src/vs/workbench/contrib/preferences/browser/settingsEditor2.ts @@ -49,7 +49,7 @@ import { createTOCIterator, TOCTree, TOCTreeModel } from 'vs/workbench/contrib/p import { CONTEXT_SETTINGS_EDITOR, CONTEXT_SETTINGS_ROW_FOCUS, CONTEXT_SETTINGS_SEARCH_FOCUS, CONTEXT_TOC_ROW_FOCUS, EXTENSION_SETTING_TAG, FEATURE_SETTING_TAG, ID_SETTING_TAG, IPreferencesSearchService, ISearchProvider, MODIFIED_SETTING_TAG, SETTINGS_EDITOR_COMMAND_CLEAR_SEARCH_RESULTS } from 'vs/workbench/contrib/preferences/common/preferences'; import { IEditorGroup, IEditorGroupsService } from 'vs/workbench/services/editor/common/editorGroupsService'; import { IPreferencesService, ISearchResult, ISettingsEditorModel, ISettingsEditorOptions, SettingsEditorOptions, SettingValueType } from 'vs/workbench/services/preferences/common/preferences'; -import { SettingsEditor2Input } from 'vs/workbench/services/preferences/common/preferencesEditorInput'; +import { SettingsEditor2Input } from 'vs/workbench/services/preferences/browser/preferencesEditorInput'; import { Settings2EditorModel } from 'vs/workbench/services/preferences/common/preferencesModels'; import { IUserDataSyncWorkbenchService } from 'vs/workbench/services/userDataSync/common/userDataSync'; import { preferencesClearInputIcon } from 'vs/workbench/contrib/preferences/browser/preferencesIcons'; diff --git a/src/vs/workbench/contrib/userDataSync/browser/userDataSyncTrigger.ts b/src/vs/workbench/contrib/userDataSync/browser/userDataSyncTrigger.ts index a668fc7bee55ba06ba5ae67fcb625ab264d29fa3..8e253f9a64431b66ac67ee92506e340a786fe9ce 100644 --- a/src/vs/workbench/contrib/userDataSync/browser/userDataSyncTrigger.ts +++ b/src/vs/workbench/contrib/userDataSync/browser/userDataSyncTrigger.ts @@ -6,7 +6,7 @@ import { Event } from 'vs/base/common/event'; import { Disposable } from 'vs/base/common/lifecycle'; import { IEditorService } from 'vs/workbench/services/editor/common/editorService'; -import { SettingsEditor2Input, KeybindingsEditorInput, PreferencesEditorInput } from 'vs/workbench/services/preferences/common/preferencesEditorInput'; +import { SettingsEditor2Input, KeybindingsEditorInput, PreferencesEditorInput } from 'vs/workbench/services/preferences/browser/preferencesEditorInput'; import { isEqual } from 'vs/base/common/resources'; import { IWorkbenchEnvironmentService } from 'vs/workbench/services/environment/common/environmentService'; import { VIEWLET_ID } from 'vs/workbench/contrib/extensions/common/extensions'; diff --git a/src/vs/workbench/services/keybinding/browser/keybindingService.ts b/src/vs/workbench/services/keybinding/browser/keybindingService.ts index d038c042df5481d8dcd91038c05904b5855480f7..f799d7a89e933adcb984aa8797063b6747171768 100644 --- a/src/vs/workbench/services/keybinding/browser/keybindingService.ts +++ b/src/vs/workbench/services/keybinding/browser/keybindingService.ts @@ -50,6 +50,7 @@ import { BrowserFeatures, KeyboardSupport } from 'vs/base/browser/canIUse'; import { ILogService } from 'vs/platform/log/common/log'; import { ExtensionIdentifier } from 'vs/platform/extensions/common/extensions'; import { dirname } from 'vs/base/common/resources'; +import { getAllUnboundCommands } from 'vs/workbench/services/keybinding/browser/unboundCommands'; interface ContributedKeyBinding { command: string; @@ -594,7 +595,7 @@ export class WorkbenchKeybindingService extends AbstractKeybindingService { } private static _getAllCommandsAsComment(boundCommands: Map): string { - const unboundCommands = KeybindingResolver.getAllUnboundCommands(boundCommands); + const unboundCommands = getAllUnboundCommands(boundCommands); let pretty = unboundCommands.sort().join('\n// - '); return '// ' + nls.localize('unboundCommands', "Here are other available commands: ") + '\n// - ' + pretty; } diff --git a/src/vs/workbench/services/keybinding/browser/unboundCommands.ts b/src/vs/workbench/services/keybinding/browser/unboundCommands.ts new file mode 100644 index 0000000000000000000000000000000000000000..3959126c8b9cadcb7df73d29df8c59011e9421b4 --- /dev/null +++ b/src/vs/workbench/services/keybinding/browser/unboundCommands.ts @@ -0,0 +1,52 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for license information. + *--------------------------------------------------------------------------------------------*/ + +import { CommandsRegistry, ICommandHandlerDescription } from 'vs/platform/commands/common/commands'; +import { isNonEmptyArray } from 'vs/base/common/arrays'; +import { EditorExtensionsRegistry } from 'vs/editor/browser/editorExtensions'; +import { MenuRegistry, MenuId, isIMenuItem } from 'vs/platform/actions/common/actions'; + +export function getAllUnboundCommands(boundCommands: Map): string[] { + const unboundCommands: string[] = []; + const seenMap: Map = new Map(); + const addCommand = (id: string, includeCommandWithArgs: boolean) => { + if (seenMap.has(id)) { + return; + } + seenMap.set(id, true); + if (id[0] === '_' || id.indexOf('vscode.') === 0) { // private command + return; + } + if (boundCommands.get(id) === true) { + return; + } + if (!includeCommandWithArgs) { + const command = CommandsRegistry.getCommand(id); + if (command && typeof command.description === 'object' + && isNonEmptyArray((command.description).args)) { // command with args + return; + } + } + unboundCommands.push(id); + }; + + // Add all commands from Command Palette + for (const menuItem of MenuRegistry.getMenuItems(MenuId.CommandPalette)) { + if (isIMenuItem(menuItem)) { + addCommand(menuItem.command.id, true); + } + } + + // Add all editor actions + for (const editorAction of EditorExtensionsRegistry.getEditorActions()) { + addCommand(editorAction.id, true); + } + + for (const id of CommandsRegistry.getCommands().keys()) { + addCommand(id, false); + } + + return unboundCommands; +} diff --git a/src/vs/workbench/services/preferences/common/keybindingsEditorModel.ts b/src/vs/workbench/services/preferences/browser/keybindingsEditorModel.ts similarity index 95% rename from src/vs/workbench/services/preferences/common/keybindingsEditorModel.ts rename to src/vs/workbench/services/preferences/browser/keybindingsEditorModel.ts index 304afc422afb693c273e045f3943fdd90f66e1b0..fd75f337148ea55128e8efaacb09b6fc04d0b3ad 100644 --- a/src/vs/workbench/services/preferences/common/keybindingsEditorModel.ts +++ b/src/vs/workbench/services/preferences/browser/keybindingsEditorModel.ts @@ -16,7 +16,8 @@ import { IWorkbenchActionRegistry, Extensions as ActionExtensions } from 'vs/wor import { EditorModel } from 'vs/workbench/common/editor'; import { IKeybindingService } from 'vs/platform/keybinding/common/keybinding'; import { ResolvedKeybindingItem } from 'vs/platform/keybinding/common/resolvedKeybindingItem'; -import { KeybindingResolver } from 'vs/platform/keybinding/common/keybindingResolver'; +import { getAllUnboundCommands } from 'vs/workbench/services/keybinding/browser/unboundCommands'; +import { IKeybindingItemEntry, KeybindingMatches, KeybindingMatch, IKeybindingItem } from 'vs/workbench/services/preferences/common/preferences'; export const KEYBINDING_ENTRY_TEMPLATE_ID = 'keybinding.entry.template'; @@ -24,44 +25,6 @@ const SOURCE_DEFAULT = localize('default', "Default"); const SOURCE_EXTENSION = localize('extension', "Extension"); const SOURCE_USER = localize('user', "User"); -export interface KeybindingMatch { - ctrlKey?: boolean; - shiftKey?: boolean; - altKey?: boolean; - metaKey?: boolean; - keyCode?: boolean; -} - -export interface KeybindingMatches { - firstPart: KeybindingMatch; - chordPart: KeybindingMatch; -} - -export interface IListEntry { - id: string; - templateId: string; -} - -export interface IKeybindingItemEntry extends IListEntry { - keybindingItem: IKeybindingItem; - commandIdMatches?: IMatch[]; - commandLabelMatches?: IMatch[]; - commandDefaultLabelMatches?: IMatch[]; - sourceMatches?: IMatch[]; - whenMatches?: IMatch[]; - keybindingMatches?: KeybindingMatches; -} - -export interface IKeybindingItem { - keybinding: ResolvedKeybinding; - keybindingItem: ResolvedKeybindingItem; - commandLabel: string; - commandDefaultLabel: string; - command: string; - source: string; - when: string; -} - interface ModifierLabels { ui: ModLabels; aria: ModLabels; @@ -190,7 +153,7 @@ export class KeybindingsEditorModel extends EditorModel { } const commandsWithDefaultKeybindings = this.keybindingsService.getDefaultKeybindings().map(keybinding => keybinding.command); - for (const command of KeybindingResolver.getAllUnboundCommands(boundCommands)) { + for (const command of getAllUnboundCommands(boundCommands)) { const keybindingItem = new ResolvedKeybindingItem(undefined, command, null, undefined, commandsWithDefaultKeybindings.indexOf(command) === -1, null, false); this._keybindingItemsSortedByPrecedence.push(KeybindingsEditorModel.toKeybindingEntry(command, keybindingItem, workbenchActionsRegistry, actionLabels)); } diff --git a/src/vs/workbench/services/preferences/common/preferencesEditorInput.ts b/src/vs/workbench/services/preferences/browser/preferencesEditorInput.ts similarity index 99% rename from src/vs/workbench/services/preferences/common/preferencesEditorInput.ts rename to src/vs/workbench/services/preferences/browser/preferencesEditorInput.ts index 18fee097595f36b036e14d40081223d7d2e73924..f679a2c6dae868ff4fb3f1c4db5c09892d34f99b 100644 --- a/src/vs/workbench/services/preferences/common/preferencesEditorInput.ts +++ b/src/vs/workbench/services/preferences/browser/preferencesEditorInput.ts @@ -10,7 +10,7 @@ import * as nls from 'vs/nls'; import { IInstantiationService } from 'vs/platform/instantiation/common/instantiation'; import { EditorInput, SideBySideEditorInput, Verbosity } from 'vs/workbench/common/editor'; import { ResourceEditorInput } from 'vs/workbench/common/editor/resourceEditorInput'; -import { KeybindingsEditorModel } from 'vs/workbench/services/preferences/common/keybindingsEditorModel'; +import { KeybindingsEditorModel } from 'vs/workbench/services/preferences/browser/keybindingsEditorModel'; import { IPreferencesService } from 'vs/workbench/services/preferences/common/preferences'; import { Settings2EditorModel } from 'vs/workbench/services/preferences/common/preferencesModels'; import { ITextFileService } from 'vs/workbench/services/textfile/common/textfiles'; diff --git a/src/vs/workbench/services/preferences/browser/preferencesService.ts b/src/vs/workbench/services/preferences/browser/preferencesService.ts index 15078ac482c3d4c38a452115ce2af3c72193804b..5559f5d1e27017929b234313fdc64760cd058f37 100644 --- a/src/vs/workbench/services/preferences/browser/preferencesService.ts +++ b/src/vs/workbench/services/preferences/browser/preferencesService.ts @@ -30,7 +30,7 @@ import { IJSONEditingService } from 'vs/workbench/services/configuration/common/ import { IEditorService } from 'vs/workbench/services/editor/common/editorService'; import { GroupDirection, IEditorGroup, IEditorGroupsService } from 'vs/workbench/services/editor/common/editorGroupsService'; import { DEFAULT_SETTINGS_EDITOR_SETTING, FOLDER_SETTINGS_PATH, getSettingsTargetName, IKeybindingsEditorOptions, IKeybindingsEditorPane, IPreferencesEditorModel, IPreferencesService, ISetting, ISettingsEditorOptions, SettingsEditorOptions, USE_SPLIT_JSON_SETTING } from 'vs/workbench/services/preferences/common/preferences'; -import { DefaultPreferencesEditorInput, KeybindingsEditorInput, PreferencesEditorInput, SettingsEditor2Input } from 'vs/workbench/services/preferences/common/preferencesEditorInput'; +import { DefaultPreferencesEditorInput, KeybindingsEditorInput, PreferencesEditorInput, SettingsEditor2Input } from 'vs/workbench/services/preferences/browser/preferencesEditorInput'; import { defaultKeybindingsContents, DefaultKeybindingsEditorModel, DefaultSettings, DefaultSettingsEditorModel, Settings2EditorModel, SettingsEditorModel, WorkspaceConfigurationEditorModel, DefaultRawSettingsEditorModel } from 'vs/workbench/services/preferences/common/preferencesModels'; import { registerSingleton } from 'vs/platform/instantiation/common/extensions'; import { IRemoteAgentService } from 'vs/workbench/services/remote/common/remoteAgentService'; diff --git a/src/vs/workbench/services/preferences/common/preferences.ts b/src/vs/workbench/services/preferences/common/preferences.ts index 736eeef7f271febaab54db3c800fef8cf458e576..eb3ef84b4bc7bc3853ffe7e196c9e90db8db5cd2 100644 --- a/src/vs/workbench/services/preferences/common/preferences.ts +++ b/src/vs/workbench/services/preferences/common/preferences.ts @@ -18,7 +18,9 @@ import { IWorkspaceContextService } from 'vs/platform/workspace/common/workspace import { EditorOptions, IEditorPane } from 'vs/workbench/common/editor'; import { IEditorGroup } from 'vs/workbench/services/editor/common/editorGroupsService'; import { Settings2EditorModel } from 'vs/workbench/services/preferences/common/preferencesModels'; -import { IKeybindingItemEntry } from 'vs/workbench/services/preferences/common/keybindingsEditorModel'; +import { IMatch } from 'vs/base/common/filters'; +import { ResolvedKeybinding } from 'vs/base/common/keyCodes'; +import { ResolvedKeybindingItem } from 'vs/platform/keybinding/common/resolvedKeybindingItem'; export enum SettingValueType { Null = 'null', @@ -241,6 +243,44 @@ export function getSettingsTargetName(target: ConfigurationTarget, resource: URI return ''; } +export interface KeybindingMatch { + ctrlKey?: boolean; + shiftKey?: boolean; + altKey?: boolean; + metaKey?: boolean; + keyCode?: boolean; +} + +export interface KeybindingMatches { + firstPart: KeybindingMatch; + chordPart: KeybindingMatch; +} + +export interface IListEntry { + id: string; + templateId: string; +} + +export interface IKeybindingItemEntry extends IListEntry { + keybindingItem: IKeybindingItem; + commandIdMatches?: IMatch[]; + commandLabelMatches?: IMatch[]; + commandDefaultLabelMatches?: IMatch[]; + sourceMatches?: IMatch[]; + whenMatches?: IMatch[]; + keybindingMatches?: KeybindingMatches; +} + +export interface IKeybindingItem { + keybinding: ResolvedKeybinding; + keybindingItem: ResolvedKeybindingItem; + commandLabel: string; + commandDefaultLabel: string; + command: string; + source: string; + when: string; +} + export interface IKeybindingsEditorPane extends IEditorPane { readonly activeKeybindingEntry: IKeybindingItemEntry | null; diff --git a/src/vs/workbench/services/preferences/test/common/keybindingsEditorModel.test.ts b/src/vs/workbench/services/preferences/test/browser/keybindingsEditorModel.test.ts similarity index 99% rename from src/vs/workbench/services/preferences/test/common/keybindingsEditorModel.test.ts rename to src/vs/workbench/services/preferences/test/browser/keybindingsEditorModel.test.ts index 9f344836f8f548feedafd5d6e98cbc610b983f75..73ff438317f278d0778e4ebc7719c8fc1547fe5b 100644 --- a/src/vs/workbench/services/preferences/test/common/keybindingsEditorModel.test.ts +++ b/src/vs/workbench/services/preferences/test/browser/keybindingsEditorModel.test.ts @@ -15,11 +15,12 @@ import { IWorkbenchActionRegistry, Extensions as ActionExtensions } from 'vs/wor import { IKeybindingService } from 'vs/platform/keybinding/common/keybinding'; import { IExtensionService } from 'vs/workbench/services/extensions/common/extensions'; import { ContextKeyExpr } from 'vs/platform/contextkey/common/contextkey'; -import { KeybindingsEditorModel, IKeybindingItemEntry } from 'vs/workbench/services/preferences/common/keybindingsEditorModel'; +import { KeybindingsEditorModel } from 'vs/workbench/services/preferences/browser/keybindingsEditorModel'; import { ResolvedKeybindingItem } from 'vs/platform/keybinding/common/resolvedKeybindingItem'; import { USLayoutResolvedKeybinding } from 'vs/platform/keybinding/common/usLayoutResolvedKeybinding'; import { TestInstantiationService } from 'vs/platform/instantiation/test/common/instantiationServiceMock'; +import { IKeybindingItemEntry } from 'vs/workbench/services/preferences/common/preferences'; interface Modifiers { metaKey?: boolean;