Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
xxadev
vscode
提交
beaf391b
V
vscode
项目概览
xxadev
/
vscode
与 Fork 源项目一致
从无法访问的项目Fork
通知
2
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
V
vscode
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
beaf391b
编写于
2月 06, 2020
作者:
R
Rob Lourens
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Use Action2 instead of editor Command
#89348
上级
4e81d102
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
159 addition
and
99 deletion
+159
-99
src/vs/workbench/contrib/preferences/browser/preferences.contribution.ts
...h/contrib/preferences/browser/preferences.contribution.ts
+159
-99
未找到文件。
src/vs/workbench/contrib/preferences/browser/preferences.contribution.ts
浏览文件 @
beaf391b
...
...
@@ -7,38 +7,37 @@ import { KeyChord, KeyCode, KeyMod } from 'vs/base/common/keyCodes';
import
{
Disposable
}
from
'
vs/base/common/lifecycle
'
;
import
{
URI
}
from
'
vs/base/common/uri
'
;
import
'
vs/css!../browser/media/preferences
'
;
import
{
Command
}
from
'
vs/editor/browser/editorExtensions
'
;
import
{
Context
as
SuggestContext
}
from
'
vs/editor/contrib/suggest/suggest
'
;
import
*
as
nls
from
'
vs/nls
'
;
import
{
MenuId
,
MenuRegistry
,
SyncActionDescriptor
}
from
'
vs/platform/actions/common/actions
'
;
import
{
Action2
,
MenuId
,
MenuRegistry
,
registerAction2
,
SyncActionDescriptor
}
from
'
vs/platform/actions/common/actions
'
;
import
{
CommandsRegistry
}
from
'
vs/platform/commands/common/commands
'
;
import
{
ContextKeyExpr
}
from
'
vs/platform/contextkey/common/contextkey
'
;
import
{
WorkbenchStateContext
,
IsMacNativeContext
,
RemoteNameContext
}
from
'
vs/workbench/browser/contextkeys
'
;
import
{
IWorkbenchEnvironmentService
}
from
'
vs/workbench/services/environment/common/environmentService
'
;
import
{
SyncDescriptor
}
from
'
vs/platform/instantiation/common/descriptors
'
;
import
{
IInstantiationService
,
ServicesAccessor
}
from
'
vs/platform/instantiation/common/instantiation
'
;
import
{
KeybindingsRegistry
,
KeybindingWeight
}
from
'
vs/platform/keybinding/common/keybindingsRegistry
'
;
import
{
ILabelService
}
from
'
vs/platform/label/common/label
'
;
import
{
LifecyclePhase
}
from
'
vs/platform/lifecycle/common/lifecycle
'
;
import
{
Registry
}
from
'
vs/platform/registry/common/platform
'
;
import
{
REMOTE_HOST_SCHEME
}
from
'
vs/platform/remote/common/remoteHosts
'
;
import
{
IWorkspaceContextService
,
WorkbenchState
}
from
'
vs/platform/workspace/common/workspace
'
;
import
{
IsMacNativeContext
,
RemoteNameContext
,
WorkbenchStateContext
}
from
'
vs/workbench/browser/contextkeys
'
;
import
{
EditorDescriptor
,
Extensions
as
EditorExtensions
,
IEditorRegistry
}
from
'
vs/workbench/browser/editor
'
;
import
{
Extensions
,
IWorkbenchActionRegistry
}
from
'
vs/workbench/common/actions
'
;
import
{
Extensions
as
WorkbenchExtensions
,
IWorkbenchContribution
,
IWorkbenchContributionsRegistry
}
from
'
vs/workbench/common/contributions
'
;
import
{
EditorInput
,
Extensions
as
EditorInputExtensions
,
IEditorInputFactory
,
IEditorInputFactoryRegistry
}
from
'
vs/workbench/common/editor
'
;
import
{
ResourceContextKey
}
from
'
vs/workbench/common/resources
'
;
import
{
ExplorerFolderContext
,
ExplorerRootContext
}
from
'
vs/workbench/contrib/files/common/files
'
;
import
{
KeybindingsEditor
}
from
'
vs/workbench/contrib/preferences/browser/keybindingsEditor
'
;
import
{
ConfigureLanguageBasedSettingsAction
,
OpenDefaultKeybindingsFileAction
,
OpenFolderSettingsAction
,
OpenGlobalKeybindingsAction
,
OpenGlobalKeybindingsFileAction
,
OpenGlobalSettingsAction
,
OpenRawDefaultSettingsAction
,
Open
Settings2Action
,
OpenSettingsJsonAction
,
OpenWorkspaceSettingsAction
,
OPEN_FOLDER_SETTINGS_COMMAND
,
OPEN_FOLDER_SETTINGS_LABEL
,
OpenRemoteSettingsAction
}
from
'
vs/workbench/contrib/preferences/browser/preferencesActions
'
;
import
{
ConfigureLanguageBasedSettingsAction
,
OpenDefaultKeybindingsFileAction
,
OpenFolderSettingsAction
,
OpenGlobalKeybindingsAction
,
OpenGlobalKeybindingsFileAction
,
OpenGlobalSettingsAction
,
OpenRawDefaultSettingsAction
,
Open
RemoteSettingsAction
,
OpenSettings2Action
,
OpenSettingsJsonAction
,
OpenWorkspaceSettingsAction
,
OPEN_FOLDER_SETTINGS_COMMAND
,
OPEN_FOLDER_SETTINGS_LABEL
}
from
'
vs/workbench/contrib/preferences/browser/preferencesActions
'
;
import
{
PreferencesEditor
}
from
'
vs/workbench/contrib/preferences/browser/preferencesEditor
'
;
import
{
CONTEXT_KEYBINDINGS_EDITOR
,
CONTEXT_KEYBINDINGS_SEARCH_FOCUS
,
CONTEXT_KEYBINDING_FOCUS
,
CONTEXT_SETTINGS_EDITOR
,
CONTEXT_SETTINGS_JSON_EDITOR
,
CONTEXT_SETTINGS_SEARCH_FOCUS
,
CONTEXT_TOC_ROW_FOCUS
,
IKeybindingsEditor
,
KEYBINDINGS_EDITOR_COMMAND_CLEAR_SEARCH_RESULTS
,
KEYBINDINGS_EDITOR_COMMAND_COPY
,
KEYBINDINGS_EDITOR_COMMAND_COPY_COMMAND
,
KEYBINDINGS_EDITOR_COMMAND_DEFINE
,
KEYBINDINGS_EDITOR_COMMAND_FOCUS_KEYBINDINGS
,
KEYBINDINGS_EDITOR_COMMAND_RECORD_SEARCH_KEYS
,
KEYBINDINGS_EDITOR_COMMAND_REMOVE
,
KEYBINDINGS_EDITOR_COMMAND_RESET
,
KEYBINDINGS_EDITOR_COMMAND_SEARCH
,
KEYBINDINGS_EDITOR_COMMAND_SHOW_SIMILAR
,
KEYBINDINGS_EDITOR_COMMAND_SORTBY_PRECEDENCE
,
KEYBINDINGS_EDITOR_SHOW_DEFAULT_KEYBINDINGS
,
KEYBINDINGS_EDITOR_SHOW_USER_KEYBINDINGS
,
MODIFIED_SETTING_TAG
,
SETTINGS_EDITOR_COMMAND_CLEAR_SEARCH_RESULTS
,
SETTINGS_EDITOR_COMMAND_EDIT_FOCUSED_SETTING
,
SETTINGS_EDITOR_COMMAND_FILTER_MODIFIED
,
SETTINGS_EDITOR_COMMAND_FILTER_ONLINE
,
SETTINGS_EDITOR_COMMAND_FOCUS_FILE
,
SETTINGS_EDITOR_COMMAND_FOCUS_NEXT_SETTING
,
SETTINGS_EDITOR_COMMAND_FOCUS_PREVIOUS_SETTING
,
SETTINGS_EDITOR_COMMAND_FOCUS_SETTINGS_FROM_SEARCH
,
SETTINGS_EDITOR_COMMAND_FOCUS_SETTINGS_LIST
,
SETTINGS_EDITOR_COMMAND_SEARCH
,
SETTINGS_EDITOR_COMMAND_SHOW_CONTEXT_MENU
,
SETTINGS_EDITOR_COMMAND_SWITCH_TO_JSON
,
SETTINGS_COMMAND_OPEN_SETTINGS
,
KEYBINDINGS_EDITOR_COMMAND_DEFINE_WHEN
}
from
'
vs/workbench/contrib/preferences/common/preferences
'
;
import
{
PreferencesContribution
}
from
'
vs/workbench/contrib/preferences/common/preferencesContribution
'
;
import
{
SettingsEditor2
}
from
'
vs/workbench/contrib/preferences/browser/settingsEditor2
'
;
import
{
CONTEXT_KEYBINDINGS_EDITOR
,
CONTEXT_KEYBINDINGS_SEARCH_FOCUS
,
CONTEXT_KEYBINDING_FOCUS
,
CONTEXT_SETTINGS_EDITOR
,
CONTEXT_SETTINGS_JSON_EDITOR
,
CONTEXT_SETTINGS_SEARCH_FOCUS
,
CONTEXT_TOC_ROW_FOCUS
,
IKeybindingsEditor
,
KEYBINDINGS_EDITOR_COMMAND_CLEAR_SEARCH_RESULTS
,
KEYBINDINGS_EDITOR_COMMAND_COPY
,
KEYBINDINGS_EDITOR_COMMAND_COPY_COMMAND
,
KEYBINDINGS_EDITOR_COMMAND_DEFINE
,
KEYBINDINGS_EDITOR_COMMAND_DEFINE_WHEN
,
KEYBINDINGS_EDITOR_COMMAND_FOCUS_KEYBINDINGS
,
KEYBINDINGS_EDITOR_COMMAND_RECORD_SEARCH_KEYS
,
KEYBINDINGS_EDITOR_COMMAND_REMOVE
,
KEYBINDINGS_EDITOR_COMMAND_RESET
,
KEYBINDINGS_EDITOR_COMMAND_SEARCH
,
KEYBINDINGS_EDITOR_COMMAND_SHOW_SIMILAR
,
KEYBINDINGS_EDITOR_COMMAND_SORTBY_PRECEDENCE
,
KEYBINDINGS_EDITOR_SHOW_DEFAULT_KEYBINDINGS
,
KEYBINDINGS_EDITOR_SHOW_USER_KEYBINDINGS
,
MODIFIED_SETTING_TAG
,
SETTINGS_COMMAND_OPEN_SETTINGS
,
SETTINGS_EDITOR_COMMAND_CLEAR_SEARCH_RESULTS
,
SETTINGS_EDITOR_COMMAND_EDIT_FOCUSED_SETTING
,
SETTINGS_EDITOR_COMMAND_FILTER_MODIFIED
,
SETTINGS_EDITOR_COMMAND_FILTER_ONLINE
,
SETTINGS_EDITOR_COMMAND_FOCUS_FILE
,
SETTINGS_EDITOR_COMMAND_FOCUS_NEXT_SETTING
,
SETTINGS_EDITOR_COMMAND_FOCUS_PREVIOUS_SETTING
,
SETTINGS_EDITOR_COMMAND_FOCUS_SETTINGS_FROM_SEARCH
,
SETTINGS_EDITOR_COMMAND_FOCUS_SETTINGS_LIST
,
SETTINGS_EDITOR_COMMAND_SEARCH
,
SETTINGS_EDITOR_COMMAND_SHOW_CONTEXT_MENU
,
SETTINGS_EDITOR_COMMAND_SWITCH_TO_JSON
}
from
'
vs/workbench/contrib/preferences/common/preferences
'
;
import
{
PreferencesContribution
}
from
'
vs/workbench/contrib/preferences/common/preferencesContribution
'
;
import
{
IEditorService
}
from
'
vs/workbench/services/editor/common/editorService
'
;
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
{
ExplorerRootContext
,
ExplorerFolderContext
}
from
'
vs/workbench/contrib/files/common/files
'
;
import
{
ILabelService
}
from
'
vs/platform/label/common/label
'
;
import
{
IExtensionService
}
from
'
vs/workbench/services/extensions/common/extensions
'
;
import
{
REMOTE_HOST_SCHEME
}
from
'
vs/platform/remote/common/remoteHosts
'
;
Registry
.
as
<
IEditorRegistry
>
(
EditorExtensions
.
Editors
).
registerEditor
(
EditorDescriptor
.
create
(
...
...
@@ -576,155 +575,216 @@ MenuRegistry.appendMenuItem(MenuId.EditorTitle, {
group
:
'
1_keyboard_preferences_actions
'
});
abstract
class
SettingsCommand
extends
Command
{
protected
getPreferencesEditor
(
accessor
:
ServicesAccessor
):
PreferencesEditor
|
SettingsEditor2
|
null
{
const
activeControl
=
accessor
.
get
(
IEditorService
).
activeControl
;
if
(
activeControl
instanceof
PreferencesEditor
||
activeControl
instanceof
SettingsEditor2
)
{
return
activeControl
;
}
return
null
;
function
getPreferencesEditor
(
accessor
:
ServicesAccessor
):
PreferencesEditor
|
SettingsEditor2
|
null
{
const
activeControl
=
accessor
.
get
(
IEditorService
).
activeControl
;
if
(
activeControl
instanceof
PreferencesEditor
||
activeControl
instanceof
SettingsEditor2
)
{
return
activeControl
;
}
return
null
;
}
class
StartSearchDefaultSettingsCommand
extends
SettingsCommand
{
runCommand
(
accessor
:
ServicesAccessor
,
args
:
any
):
void
{
const
preferencesEditor
=
this
.
getPreferencesEditor
(
accessor
);
registerAction2
(
class
extends
Action2
{
constructor
()
{
super
({
id
:
SETTINGS_EDITOR_COMMAND_SEARCH
,
precondition
:
ContextKeyExpr
.
and
(
CONTEXT_SETTINGS_EDITOR
),
keybinding
:
{
primary
:
KeyMod
.
CtrlCmd
|
KeyCode
.
KEY_F
,
weight
:
KeybindingWeight
.
EditorContrib
,
when
:
null
},
title
:
nls
.
localize
(
'
settings.focusSearch
'
,
"
Focus settings search
"
)
});
}
run
(
accessor
:
ServicesAccessor
)
{
const
preferencesEditor
=
getPreferencesEditor
(
accessor
);
if
(
preferencesEditor
)
{
preferencesEditor
.
focusSearch
();
}
}
}
const
startSearchCommand
=
new
StartSearchDefaultSettingsCommand
({
id
:
SETTINGS_EDITOR_COMMAND_SEARCH
,
precondition
:
ContextKeyExpr
.
and
(
CONTEXT_SETTINGS_EDITOR
),
kbOpts
:
{
primary
:
KeyMod
.
CtrlCmd
|
KeyCode
.
KEY_F
,
weight
:
KeybindingWeight
.
EditorContrib
}
});
startSearchCommand
.
register
();
class
ClearSearchResultsCommand
extends
SettingsCommand
{
registerAction2
(
class
extends
Action2
{
constructor
()
{
super
({
id
:
SETTINGS_EDITOR_COMMAND_CLEAR_SEARCH_RESULTS
,
precondition
:
CONTEXT_SETTINGS_SEARCH_FOCUS
,
keybinding
:
{
primary
:
KeyCode
.
Escape
,
weight
:
KeybindingWeight
.
EditorContrib
,
when
:
null
},
title
:
nls
.
localize
(
'
settings.clearResults
'
,
"
Clear settings search results
"
)
});
}
run
Command
(
accessor
:
ServicesAccessor
,
args
:
any
):
void
{
const
preferencesEditor
=
this
.
getPreferencesEditor
(
accessor
);
run
(
accessor
:
ServicesAccessor
)
{
const
preferencesEditor
=
getPreferencesEditor
(
accessor
);
if
(
preferencesEditor
)
{
preferencesEditor
.
clearSearchResults
();
}
}
}
const
clearSearchResultsCommand
=
new
ClearSearchResultsCommand
({
id
:
SETTINGS_EDITOR_COMMAND_CLEAR_SEARCH_RESULTS
,
precondition
:
CONTEXT_SETTINGS_SEARCH_FOCUS
,
kbOpts
:
{
primary
:
KeyCode
.
Escape
,
weight
:
KeybindingWeight
.
EditorContrib
}
});
clearSearchResultsCommand
.
register
();
class
FocusSettingsFileEditorCommand
extends
SettingsCommand
{
registerAction2
(
class
extends
Action2
{
constructor
()
{
super
({
id
:
SETTINGS_EDITOR_COMMAND_FOCUS_FILE
,
precondition
:
ContextKeyExpr
.
and
(
CONTEXT_SETTINGS_SEARCH_FOCUS
,
SuggestContext
.
Visible
.
toNegated
()),
keybinding
:
{
primary
:
KeyCode
.
DownArrow
,
weight
:
KeybindingWeight
.
EditorContrib
,
when
:
null
},
title
:
nls
.
localize
(
'
settings.focusFile
'
,
"
Focus settings file
"
)
});
}
run
Command
(
accessor
:
ServicesAccessor
,
args
:
any
):
void
{
const
preferencesEditor
=
this
.
getPreferencesEditor
(
accessor
);
run
(
accessor
:
ServicesAccessor
,
args
:
any
):
void
{
const
preferencesEditor
=
getPreferencesEditor
(
accessor
);
if
(
preferencesEditor
instanceof
PreferencesEditor
)
{
preferencesEditor
.
focusSettingsFileEditor
();
}
else
if
(
preferencesEditor
)
{
preferencesEditor
.
focusSettings
();
}
}
}
const
focusSettingsFileEditorCommand
=
new
FocusSettingsFileEditorCommand
({
id
:
SETTINGS_EDITOR_COMMAND_FOCUS_FILE
,
precondition
:
ContextKeyExpr
.
and
(
CONTEXT_SETTINGS_SEARCH_FOCUS
,
SuggestContext
.
Visible
.
toNegated
()),
kbOpts
:
{
primary
:
KeyCode
.
DownArrow
,
weight
:
KeybindingWeight
.
EditorContrib
}
});
focusSettingsFileEditorCommand
.
register
();
const
focusSettingsFromSearchCommand
=
new
FocusSettingsFileEditorCommand
({
id
:
SETTINGS_EDITOR_COMMAND_FOCUS_SETTINGS_FROM_SEARCH
,
precondition
:
ContextKeyExpr
.
and
(
CONTEXT_SETTINGS_SEARCH_FOCUS
,
SuggestContext
.
Visible
.
toNegated
()),
kbOpts
:
{
primary
:
KeyCode
.
DownArrow
,
weight
:
KeybindingWeight
.
WorkbenchContrib
}
registerAction2
(
class
extends
Action2
{
constructor
()
{
super
({
id
:
SETTINGS_EDITOR_COMMAND_FOCUS_SETTINGS_FROM_SEARCH
,
precondition
:
ContextKeyExpr
.
and
(
CONTEXT_SETTINGS_SEARCH_FOCUS
,
SuggestContext
.
Visible
.
toNegated
()),
keybinding
:
{
primary
:
KeyCode
.
DownArrow
,
weight
:
KeybindingWeight
.
WorkbenchContrib
,
when
:
null
},
title
:
nls
.
localize
(
'
settings.focusFile
'
,
"
Focus settings file
"
)
});
}
run
(
accessor
:
ServicesAccessor
,
args
:
any
):
void
{
const
preferencesEditor
=
getPreferencesEditor
(
accessor
);
if
(
preferencesEditor
instanceof
PreferencesEditor
)
{
preferencesEditor
.
focusSettingsFileEditor
();
}
else
if
(
preferencesEditor
)
{
preferencesEditor
.
focusSettings
();
}
}
});
focusSettingsFromSearchCommand
.
register
();
class
FocusNextSearchResultCommand
extends
SettingsCommand
{
registerAction2
(
class
extends
Action2
{
constructor
()
{
super
({
id
:
SETTINGS_EDITOR_COMMAND_FOCUS_NEXT_SETTING
,
precondition
:
CONTEXT_SETTINGS_SEARCH_FOCUS
,
keybinding
:
{
primary
:
KeyCode
.
Enter
,
weight
:
KeybindingWeight
.
EditorContrib
,
when
:
null
},
title
:
nls
.
localize
(
'
settings.focusNextSetting
'
,
"
Focus next setting
"
)
});
}
run
Command
(
accessor
:
ServicesAccessor
,
args
:
any
):
void
{
const
preferencesEditor
=
this
.
getPreferencesEditor
(
accessor
);
run
(
accessor
:
ServicesAccessor
):
void
{
const
preferencesEditor
=
getPreferencesEditor
(
accessor
);
if
(
preferencesEditor
instanceof
PreferencesEditor
)
{
preferencesEditor
.
focusNextResult
();
}
}
}
const
focusNextSearchResultCommand
=
new
FocusNextSearchResultCommand
({
id
:
SETTINGS_EDITOR_COMMAND_FOCUS_NEXT_SETTING
,
precondition
:
CONTEXT_SETTINGS_SEARCH_FOCUS
,
kbOpts
:
{
primary
:
KeyCode
.
Enter
,
weight
:
KeybindingWeight
.
EditorContrib
}
});
focusNextSearchResultCommand
.
register
();
class
FocusPreviousSearchResultCommand
extends
SettingsCommand
{
registerAction2
(
class
extends
Action2
{
constructor
()
{
super
({
id
:
SETTINGS_EDITOR_COMMAND_FOCUS_PREVIOUS_SETTING
,
precondition
:
CONTEXT_SETTINGS_SEARCH_FOCUS
,
keybinding
:
{
primary
:
KeyMod
.
Shift
|
KeyCode
.
Enter
,
weight
:
KeybindingWeight
.
EditorContrib
,
when
:
null
},
title
:
nls
.
localize
(
'
settings.focusPreviousSetting
'
,
"
Focus previous setting
"
)
});
}
run
Command
(
accessor
:
ServicesAccessor
,
args
:
any
):
void
{
const
preferencesEditor
=
this
.
getPreferencesEditor
(
accessor
);
run
(
accessor
:
ServicesAccessor
):
void
{
const
preferencesEditor
=
getPreferencesEditor
(
accessor
);
if
(
preferencesEditor
instanceof
PreferencesEditor
)
{
preferencesEditor
.
focusPreviousResult
();
}
}
}
const
focusPreviousSearchResultCommand
=
new
FocusPreviousSearchResultCommand
({
id
:
SETTINGS_EDITOR_COMMAND_FOCUS_PREVIOUS_SETTING
,
precondition
:
CONTEXT_SETTINGS_SEARCH_FOCUS
,
kbOpts
:
{
primary
:
KeyMod
.
Shift
|
KeyCode
.
Enter
,
weight
:
KeybindingWeight
.
EditorContrib
}
});
focusPreviousSearchResultCommand
.
register
();
class
EditFocusedSettingCommand
extends
SettingsCommand
{
registerAction2
(
class
extends
Action2
{
constructor
()
{
super
({
id
:
SETTINGS_EDITOR_COMMAND_EDIT_FOCUSED_SETTING
,
precondition
:
CONTEXT_SETTINGS_SEARCH_FOCUS
,
keybinding
:
{
primary
:
KeyMod
.
CtrlCmd
|
KeyCode
.
US_DOT
,
weight
:
KeybindingWeight
.
EditorContrib
,
when
:
null
},
title
:
nls
.
localize
(
'
settings.editFocusedSetting
'
,
"
Edit focused setting
"
)
});
}
run
Command
(
accessor
:
ServicesAccessor
,
args
:
any
):
void
{
const
preferencesEditor
=
this
.
getPreferencesEditor
(
accessor
);
run
(
accessor
:
ServicesAccessor
):
void
{
const
preferencesEditor
=
getPreferencesEditor
(
accessor
);
if
(
preferencesEditor
instanceof
PreferencesEditor
)
{
preferencesEditor
.
editFocusedPreference
();
}
}
}
const
editFocusedSettingCommand
=
new
EditFocusedSettingCommand
({
id
:
SETTINGS_EDITOR_COMMAND_EDIT_FOCUSED_SETTING
,
precondition
:
CONTEXT_SETTINGS_SEARCH_FOCUS
,
kbOpts
:
{
primary
:
KeyMod
.
CtrlCmd
|
KeyCode
.
US_DOT
,
weight
:
KeybindingWeight
.
EditorContrib
}
});
editFocusedSettingCommand
.
register
();
class
FocusSettingsListCommand
extends
SettingsCommand
{
registerAction2
(
class
extends
Action2
{
constructor
()
{
super
({
id
:
SETTINGS_EDITOR_COMMAND_FOCUS_SETTINGS_LIST
,
precondition
:
ContextKeyExpr
.
and
(
CONTEXT_SETTINGS_EDITOR
,
CONTEXT_TOC_ROW_FOCUS
),
keybinding
:
{
primary
:
KeyCode
.
Enter
,
weight
:
KeybindingWeight
.
WorkbenchContrib
,
when
:
null
},
title
:
nls
.
localize
(
'
settings.focusSettingsList
'
,
"
Focus settings list
"
)
});
}
run
Command
(
accessor
:
ServicesAccessor
,
args
:
any
):
void
{
const
preferencesEditor
=
this
.
getPreferencesEditor
(
accessor
);
run
(
accessor
:
ServicesAccessor
):
void
{
const
preferencesEditor
=
getPreferencesEditor
(
accessor
);
if
(
preferencesEditor
instanceof
SettingsEditor2
)
{
preferencesEditor
.
focusSettings
();
}
}
}
const
focusSettingsListCommand
=
new
FocusSettingsListCommand
({
id
:
SETTINGS_EDITOR_COMMAND_FOCUS_SETTINGS_LIST
,
precondition
:
ContextKeyExpr
.
and
(
CONTEXT_SETTINGS_EDITOR
,
CONTEXT_TOC_ROW_FOCUS
),
kbOpts
:
{
primary
:
KeyCode
.
Enter
,
weight
:
KeybindingWeight
.
WorkbenchContrib
}
});
focusSettingsListCommand
.
register
();
class
ShowContextMenuCommand
extends
SettingsCommand
{
runCommand
(
accessor
:
ServicesAccessor
,
args
:
any
):
void
{
const
preferencesEditor
=
this
.
getPreferencesEditor
(
accessor
);
registerAction2
(
class
extends
Action2
{
constructor
()
{
super
({
id
:
SETTINGS_EDITOR_COMMAND_SHOW_CONTEXT_MENU
,
precondition
:
ContextKeyExpr
.
and
(
CONTEXT_SETTINGS_EDITOR
),
keybinding
:
{
primary
:
KeyMod
.
Shift
|
KeyCode
.
F9
,
weight
:
KeybindingWeight
.
WorkbenchContrib
,
when
:
null
},
title
:
nls
.
localize
(
'
settings.showContextMenu
'
,
"
Show context menu
"
)
});
}
run
(
accessor
:
ServicesAccessor
):
void
{
const
preferencesEditor
=
getPreferencesEditor
(
accessor
);
if
(
preferencesEditor
instanceof
SettingsEditor2
)
{
preferencesEditor
.
showContextMenu
();
}
}
}
const
showContextMenuCommand
=
new
ShowContextMenuCommand
({
id
:
SETTINGS_EDITOR_COMMAND_SHOW_CONTEXT_MENU
,
precondition
:
ContextKeyExpr
.
and
(
CONTEXT_SETTINGS_EDITOR
),
kbOpts
:
{
primary
:
KeyMod
.
Shift
|
KeyCode
.
F9
,
weight
:
KeybindingWeight
.
WorkbenchContrib
}
});
showContextMenuCommand
.
register
();
CommandsRegistry
.
registerCommand
(
SETTINGS_EDITOR_COMMAND_SWITCH_TO_JSON
,
serviceAccessor
=>
{
const
control
=
serviceAccessor
.
get
(
IEditorService
).
activeControl
as
SettingsEditor2
;
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录