Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
xxadev
vscode
提交
524bf8be
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,发现更多精彩内容 >>
未验证
提交
524bf8be
编写于
1月 17, 2018
作者:
S
Sandeep Somavarapu
提交者:
GitHub
1月 17, 2018
浏览文件
操作
浏览文件
下载
差异文件
Merge pull request #41567 from Digized/master
Add copy command action to keybinding editor context menu
上级
ba069052
c8bf5925
变更
3
隐藏空白更改
内联
并排
Showing
3 changed file
with
32 addition
and
2 deletion
+32
-2
src/vs/workbench/parts/preferences/browser/keybindingsEditor.ts
.../workbench/parts/preferences/browser/keybindingsEditor.ts
+18
-1
src/vs/workbench/parts/preferences/common/preferences.ts
src/vs/workbench/parts/preferences/common/preferences.ts
+2
-0
src/vs/workbench/parts/preferences/electron-browser/preferences.contribution.ts
.../preferences/electron-browser/preferences.contribution.ts
+12
-1
未找到文件。
src/vs/workbench/parts/preferences/browser/keybindingsEditor.ts
浏览文件 @
524bf8be
...
...
@@ -26,7 +26,7 @@ import { SearchWidget } from 'vs/workbench/parts/preferences/browser/preferences
import
{
DefineKeybindingWidget
}
from
'
vs/workbench/parts/preferences/browser/keybindingWidgets
'
;
import
{
IPreferencesService
,
IKeybindingsEditor
,
CONTEXT_KEYBINDING_FOCUS
,
CONTEXT_KEYBINDINGS_EDITOR
,
CONTEXT_KEYBINDINGS_SEARCH_FOCUS
,
KEYBINDINGS_EDITOR_COMMAND_REMOVE
,
KEYBINDINGS_EDITOR_COMMAND_COPY
,
KEYBINDINGS_EDITOR_COMMAND_RESET
,
KEYBINDINGS_EDITOR_COMMAND_DEFINE
,
KEYBINDINGS_EDITOR_COMMAND_SHOW_CONFLICTS
KEYBINDINGS_EDITOR_COMMAND_RESET
,
KEYBINDINGS_EDITOR_COMMAND_
COPY_COMMAND
,
KEYBINDINGS_EDITOR_COMMAND_
DEFINE
,
KEYBINDINGS_EDITOR_COMMAND_SHOW_CONFLICTS
}
from
'
vs/workbench/parts/preferences/common/preferences
'
;
import
{
IContextMenuService
}
from
'
vs/platform/contextview/browser/contextView
'
;
import
{
IKeybindingEditingService
}
from
'
vs/workbench/services/keybinding/common/keybindingEditing
'
;
...
...
@@ -245,6 +245,13 @@ export class KeybindingsEditor extends BaseEditor implements IKeybindingsEditor
return
TPromise
.
as
(
null
);
}
copyKeybindingCommand
(
keybinding
:
IKeybindingItemEntry
):
TPromise
<
any
>
{
this
.
selectEntry
(
keybinding
);
this
.
reportKeybindingAction
(
KEYBINDINGS_EDITOR_COMMAND_COPY_COMMAND
,
keybinding
.
keybindingItem
.
command
,
keybinding
.
keybindingItem
.
keybinding
);
this
.
clipboardService
.
writeText
(
keybinding
.
keybindingItem
.
command
);
return
TPromise
.
as
(
null
);
}
search
(
filter
:
string
):
void
{
this
.
searchWidget
.
focus
();
}
...
...
@@ -456,6 +463,7 @@ export class KeybindingsEditor extends BaseEditor implements IKeybindingsEditor
getAnchor
:
()
=>
e
.
anchor
,
getActions
:
()
=>
TPromise
.
as
([
this
.
createCopyAction
(
<
IKeybindingItemEntry
>
e
.
element
),
this
.
createCopyCommandAction
(
<
IKeybindingItemEntry
>
e
.
element
),
new
Separator
(),
this
.
createDefineAction
(
<
IKeybindingItemEntry
>
e
.
element
),
this
.
createRemoveAction
(
<
IKeybindingItemEntry
>
e
.
element
),
...
...
@@ -526,6 +534,15 @@ export class KeybindingsEditor extends BaseEditor implements IKeybindingsEditor
};
}
private
createCopyCommandAction
(
keybinding
:
IKeybindingItemEntry
):
IAction
{
return
<
IAction
>
{
label
:
localize
(
'
copyCommandLabel
'
,
"
Copy Command
"
),
enabled
:
true
,
id
:
KEYBINDINGS_EDITOR_COMMAND_COPY_COMMAND
,
run
:
()
=>
this
.
copyKeybindingCommand
(
keybinding
)
};
}
private
reportFilteringUsed
(
filter
:
string
):
void
{
if
(
filter
)
{
let
data
=
{
...
...
src/vs/workbench/parts/preferences/common/preferences.ts
浏览文件 @
524bf8be
...
...
@@ -149,6 +149,7 @@ export interface IKeybindingsEditor extends IEditor {
removeKeybinding
(
keybindingEntry
:
IKeybindingItemEntry
):
TPromise
<
any
>
;
resetKeybinding
(
keybindingEntry
:
IKeybindingItemEntry
):
TPromise
<
any
>
;
copyKeybinding
(
keybindingEntry
:
IKeybindingItemEntry
):
TPromise
<
any
>
;
copyKeybindingCommand
(
keybindingEntry
:
IKeybindingItemEntry
):
TPromise
<
any
>
;
showConflicts
(
keybindingEntry
:
IKeybindingItemEntry
):
TPromise
<
any
>
;
}
...
...
@@ -202,6 +203,7 @@ export const KEYBINDINGS_EDITOR_COMMAND_DEFINE = 'keybindings.editor.defineKeybi
export
const
KEYBINDINGS_EDITOR_COMMAND_REMOVE
=
'
keybindings.editor.removeKeybinding
'
;
export
const
KEYBINDINGS_EDITOR_COMMAND_RESET
=
'
keybindings.editor.resetKeybinding
'
;
export
const
KEYBINDINGS_EDITOR_COMMAND_COPY
=
'
keybindings.editor.copyKeybindingEntry
'
;
export
const
KEYBINDINGS_EDITOR_COMMAND_COPY_COMMAND
=
'
keybindings.editor.copyCommandKeybindingEntry
'
;
export
const
KEYBINDINGS_EDITOR_COMMAND_SHOW_CONFLICTS
=
'
keybindings.editor.showConflicts
'
;
export
const
KEYBINDINGS_EDITOR_COMMAND_FOCUS_KEYBINDINGS
=
'
keybindings.editor.focusKeybindings
'
;
...
...
src/vs/workbench/parts/preferences/electron-browser/preferences.contribution.ts
浏览文件 @
524bf8be
...
...
@@ -19,7 +19,7 @@ import { KeybindingsEditor, KeybindingsEditorInput } from 'vs/workbench/parts/pr
import
{
OpenRawDefaultSettingsAction
,
OpenGlobalSettingsAction
,
OpenGlobalKeybindingsAction
,
OpenGlobalKeybindingsFileAction
,
OpenWorkspaceSettingsAction
,
OpenFolderSettingsAction
,
ConfigureLanguageBasedSettingsAction
,
OPEN_FOLDER_SETTINGS_COMMAND
}
from
'
vs/workbench/parts/preferences/browser/preferencesActions
'
;
import
{
IPreferencesService
,
IKeybindingsEditor
,
IPreferencesSearchService
,
CONTEXT_KEYBINDING_FOCUS
,
CONTEXT_KEYBINDINGS_EDITOR
,
CONTEXT_KEYBINDINGS_SEARCH_FOCUS
,
KEYBINDINGS_EDITOR_COMMAND_DEFINE
,
KEYBINDINGS_EDITOR_COMMAND_REMOVE
,
KEYBINDINGS_EDITOR_COMMAND_SEARCH
,
KEYBINDINGS_EDITOR_COMMAND_COPY
,
KEYBINDINGS_EDITOR_COMMAND_RESET
,
KEYBINDINGS_EDITOR_COMMAND_SHOW_CONFLICTS
,
KEYBINDINGS_EDITOR_COMMAND_FOCUS_KEYBINDINGS
,
KEYBINDINGS_EDITOR_COMMAND_CLEAR_SEARCH_RESULTS
KEYBINDINGS_EDITOR_COMMAND_COPY
,
KEYBINDINGS_EDITOR_COMMAND_RESET
,
KEYBINDINGS_EDITOR_COMMAND_
COPY_COMMAND
,
KEYBINDINGS_EDITOR_COMMAND_
SHOW_CONFLICTS
,
KEYBINDINGS_EDITOR_COMMAND_FOCUS_KEYBINDINGS
,
KEYBINDINGS_EDITOR_COMMAND_CLEAR_SEARCH_RESULTS
}
from
'
vs/workbench/parts/preferences/common/preferences
'
;
import
{
PreferencesService
}
from
'
vs/workbench/parts/preferences/browser/preferencesService
'
;
import
{
IInstantiationService
,
ServicesAccessor
}
from
'
vs/platform/instantiation/common/instantiation
'
;
...
...
@@ -238,6 +238,17 @@ KeybindingsRegistry.registerCommandAndKeybindingRule({
}
});
KeybindingsRegistry
.
registerCommandAndKeybindingRule
({
id
:
KEYBINDINGS_EDITOR_COMMAND_COPY_COMMAND
,
weight
:
KeybindingsRegistry
.
WEIGHT
.
workbenchContrib
(),
when
:
ContextKeyExpr
.
and
(
CONTEXT_KEYBINDINGS_EDITOR
,
CONTEXT_KEYBINDING_FOCUS
),
primary
:
null
,
handler
:
(
accessor
,
args
:
any
)
=>
{
const
editor
=
accessor
.
get
(
IWorkbenchEditorService
).
getActiveEditor
()
as
IKeybindingsEditor
;
editor
.
copyKeybindingCommand
(
editor
.
activeKeybindingEntry
);
}
});
KeybindingsRegistry
.
registerCommandAndKeybindingRule
({
id
:
KEYBINDINGS_EDITOR_COMMAND_FOCUS_KEYBINDINGS
,
weight
:
KeybindingsRegistry
.
WEIGHT
.
workbenchContrib
(),
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录