Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
xxadev
vscode
提交
e8fd8712
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,体验更适合开发者的 AI 搜索 >>
提交
e8fd8712
编写于
6月 28, 2018
作者:
S
Sandeep Somavarapu
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Fix #51303
上级
2fb8c99a
变更
5
隐藏空白更改
内联
并排
Showing
5 changed file
with
22 addition
and
8 deletion
+22
-8
src/vs/workbench/parts/preferences/browser/keybindingsEditor.ts
.../workbench/parts/preferences/browser/keybindingsEditor.ts
+5
-1
src/vs/workbench/parts/preferences/common/preferences.ts
src/vs/workbench/parts/preferences/common/preferences.ts
+1
-0
src/vs/workbench/parts/preferences/electron-browser/preferences.contribution.ts
.../preferences/electron-browser/preferences.contribution.ts
+1
-1
src/vs/workbench/services/keybinding/common/keybindingEditing.ts
...workbench/services/keybinding/common/keybindingEditing.ts
+6
-5
src/vs/workbench/services/keybinding/test/electron-browser/keybindingEditing.test.ts
...eybinding/test/electron-browser/keybindingEditing.test.ts
+9
-1
未找到文件。
src/vs/workbench/parts/preferences/browser/keybindingsEditor.ts
浏览文件 @
e8fd8712
...
@@ -247,8 +247,12 @@ export class KeybindingsEditor extends BaseEditor implements IKeybindingsEditor
...
@@ -247,8 +247,12 @@ export class KeybindingsEditor extends BaseEditor implements IKeybindingsEditor
return
TPromise
.
as
(
null
);
return
TPromise
.
as
(
null
);
}
}
search
(
filter
:
string
):
void
{
focusSearch
(
):
void
{
this
.
searchWidget
.
focus
();
this
.
searchWidget
.
focus
();
}
search
(
filter
:
string
):
void
{
this
.
focusSearch
();
this
.
searchWidget
.
setValue
(
filter
);
this
.
searchWidget
.
setValue
(
filter
);
}
}
...
...
src/vs/workbench/parts/preferences/common/preferences.ts
浏览文件 @
e8fd8712
...
@@ -48,6 +48,7 @@ export interface IKeybindingsEditor extends IEditor {
...
@@ -48,6 +48,7 @@ export interface IKeybindingsEditor extends IEditor {
activeKeybindingEntry
:
IKeybindingItemEntry
;
activeKeybindingEntry
:
IKeybindingItemEntry
;
search
(
filter
:
string
):
void
;
search
(
filter
:
string
):
void
;
focusSearch
():
void
;
clearSearchResults
():
void
;
clearSearchResults
():
void
;
focusKeybindings
():
void
;
focusKeybindings
():
void
;
defineKeybinding
(
keybindingEntry
:
IKeybindingItemEntry
):
TPromise
<
any
>
;
defineKeybinding
(
keybindingEntry
:
IKeybindingItemEntry
):
TPromise
<
any
>
;
...
...
src/vs/workbench/parts/preferences/electron-browser/preferences.contribution.ts
浏览文件 @
e8fd8712
...
@@ -239,7 +239,7 @@ KeybindingsRegistry.registerCommandAndKeybindingRule({
...
@@ -239,7 +239,7 @@ KeybindingsRegistry.registerCommandAndKeybindingRule({
weight
:
KeybindingsRegistry
.
WEIGHT
.
workbenchContrib
(),
weight
:
KeybindingsRegistry
.
WEIGHT
.
workbenchContrib
(),
when
:
ContextKeyExpr
.
and
(
CONTEXT_KEYBINDINGS_EDITOR
,
CONTEXT_KEYBINDING_FOCUS
),
when
:
ContextKeyExpr
.
and
(
CONTEXT_KEYBINDINGS_EDITOR
,
CONTEXT_KEYBINDING_FOCUS
),
primary
:
KeyMod
.
CtrlCmd
|
KeyCode
.
KEY_F
,
primary
:
KeyMod
.
CtrlCmd
|
KeyCode
.
KEY_F
,
handler
:
(
accessor
,
args
:
any
)
=>
(
accessor
.
get
(
IEditorService
).
activeControl
as
IKeybindingsEditor
).
search
(
''
)
handler
:
(
accessor
,
args
:
any
)
=>
(
accessor
.
get
(
IEditorService
).
activeControl
as
IKeybindingsEditor
).
focusSearch
(
)
});
});
KeybindingsRegistry
.
registerCommandAndKeybindingRule
({
KeybindingsRegistry
.
registerCommandAndKeybindingRule
({
...
...
src/vs/workbench/services/keybinding/common/keybindingEditing.ts
浏览文件 @
e8fd8712
...
@@ -160,8 +160,8 @@ export class KeybindingsEditingService extends Disposable implements IKeybinding
...
@@ -160,8 +160,8 @@ export class KeybindingsEditingService extends Disposable implements IKeybinding
const
{
tabSize
,
insertSpaces
}
=
model
.
getOptions
();
const
{
tabSize
,
insertSpaces
}
=
model
.
getOptions
();
const
eol
=
model
.
getEOL
();
const
eol
=
model
.
getEOL
();
const
userKeybindingEntries
=
<
IUserFriendlyKeybinding
[]
>
json
.
parse
(
model
.
getValue
());
const
userKeybindingEntries
=
<
IUserFriendlyKeybinding
[]
>
json
.
parse
(
model
.
getValue
());
const
ind
ex
=
this
.
findUnassignedDefaultKeybindingEntryIndex
(
keybindingItem
,
userKeybindingEntries
);
const
ind
ices
=
this
.
findUnassignedDefaultKeybindingEntryIndex
(
keybindingItem
,
userKeybindingEntries
).
reverse
(
);
if
(
index
!==
-
1
)
{
for
(
const
index
of
indices
)
{
this
.
applyEditsToBuffer
(
setProperty
(
model
.
getValue
(),
[
index
],
void
0
,
{
tabSize
,
insertSpaces
,
eol
})[
0
],
model
);
this
.
applyEditsToBuffer
(
setProperty
(
model
.
getValue
(),
[
index
],
void
0
,
{
tabSize
,
insertSpaces
,
eol
})[
0
],
model
);
}
}
}
}
...
@@ -183,13 +183,14 @@ export class KeybindingsEditingService extends Disposable implements IKeybinding
...
@@ -183,13 +183,14 @@ export class KeybindingsEditingService extends Disposable implements IKeybinding
return
-
1
;
return
-
1
;
}
}
private
findUnassignedDefaultKeybindingEntryIndex
(
keybindingItem
:
ResolvedKeybindingItem
,
userKeybindingEntries
:
IUserFriendlyKeybinding
[]):
number
{
private
findUnassignedDefaultKeybindingEntryIndex
(
keybindingItem
:
ResolvedKeybindingItem
,
userKeybindingEntries
:
IUserFriendlyKeybinding
[]):
number
[]
{
const
indices
=
[];
for
(
let
index
=
0
;
index
<
userKeybindingEntries
.
length
;
index
++
)
{
for
(
let
index
=
0
;
index
<
userKeybindingEntries
.
length
;
index
++
)
{
if
(
userKeybindingEntries
[
index
].
command
===
`-
${
keybindingItem
.
command
}
`
)
{
if
(
userKeybindingEntries
[
index
].
command
===
`-
${
keybindingItem
.
command
}
`
)
{
return
index
;
indices
.
push
(
index
)
;
}
}
}
}
return
-
1
;
return
indices
;
}
}
private
asObject
(
key
:
string
,
command
:
string
,
when
:
ContextKeyExpr
,
negate
:
boolean
):
any
{
private
asObject
(
key
:
string
,
command
:
string
,
when
:
ContextKeyExpr
,
negate
:
boolean
):
any
{
...
...
src/vs/workbench/services/keybinding/test/electron-browser/keybindingEditing.test.ts
浏览文件 @
e8fd8712
...
@@ -55,7 +55,7 @@ interface Modifiers {
...
@@ -55,7 +55,7 @@ interface Modifiers {
shiftKey
?:
boolean
;
shiftKey
?:
boolean
;
}
}
suite
(
'
Keybindings
Editing
'
,
()
=>
{
suite
(
'
KeybindingsEditing
'
,
()
=>
{
let
instantiationService
:
TestInstantiationService
;
let
instantiationService
:
TestInstantiationService
;
let
testObject
:
KeybindingsEditingService
;
let
testObject
:
KeybindingsEditingService
;
...
@@ -220,6 +220,14 @@ suite('Keybindings Editing', () => {
...
@@ -220,6 +220,14 @@ suite('Keybindings Editing', () => {
.
then
(()
=>
assert
.
deepEqual
(
getUserKeybindings
(),
[]));
.
then
(()
=>
assert
.
deepEqual
(
getUserKeybindings
(),
[]));
});
});
test
(
'
reset mulitple removed keybindings
'
,
()
=>
{
writeToKeybindingsFile
({
key
:
'
alt+c
'
,
command
:
'
-b
'
});
writeToKeybindingsFile
({
key
:
'
alt+shift+c
'
,
command
:
'
-b
'
});
writeToKeybindingsFile
({
key
:
'
escape
'
,
command
:
'
-b
'
});
return
testObject
.
resetKeybinding
(
aResolvedKeybindingItem
({
command
:
'
b
'
,
isDefault
:
false
}))
.
then
(()
=>
assert
.
deepEqual
(
getUserKeybindings
(),
[]));
});
function
writeToKeybindingsFile
(...
keybindings
:
IUserFriendlyKeybinding
[])
{
function
writeToKeybindingsFile
(...
keybindings
:
IUserFriendlyKeybinding
[])
{
fs
.
writeFileSync
(
keybindingsFile
,
JSON
.
stringify
(
keybindings
||
[]));
fs
.
writeFileSync
(
keybindingsFile
,
JSON
.
stringify
(
keybindings
||
[]));
}
}
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录