Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
掘金者说
vscode
提交
8510c24e
V
vscode
项目概览
掘金者说
/
vscode
与 Fork 源项目一致
从无法访问的项目Fork
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
V
vscode
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
8510c24e
编写于
3月 03, 2018
作者:
S
Shobhit Chittora
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
fixes tests
上级
09f2c6bf
变更
3
隐藏空白更改
内联
并排
Showing
3 changed file
with
42 addition
and
44 deletion
+42
-44
src/vs/workbench/parts/preferences/browser/keybindingsEditor.ts
.../workbench/parts/preferences/browser/keybindingsEditor.ts
+28
-39
src/vs/workbench/parts/preferences/common/keybindingsEditorModel.ts
...kbench/parts/preferences/common/keybindingsEditorModel.ts
+1
-1
src/vs/workbench/parts/preferences/test/common/keybindingsEditorModel.test.ts
...ts/preferences/test/common/keybindingsEditorModel.test.ts
+13
-4
未找到文件。
src/vs/workbench/parts/preferences/browser/keybindingsEditor.ts
浏览文件 @
8510c24e
...
...
@@ -98,7 +98,6 @@ export class KeybindingsEditor extends BaseEditor implements IKeybindingsEditor
private
keybindingFocusContextKey
:
IContextKey
<
boolean
>
;
private
searchFocusContextKey
:
IContextKey
<
boolean
>
;
private
sortByPrecedence
:
Checkbox
;
private
secondaryActions
:
IAction
[];
constructor
(
@
ITelemetryService
telemetryService
:
ITelemetryService
,
...
...
@@ -178,37 +177,27 @@ export class KeybindingsEditor extends BaseEditor implements IKeybindingsEditor
return
focusedElement
&&
focusedElement
.
templateId
===
KEYBINDING_ENTRY_TEMPLATE_ID
?
<
IKeybindingItemEntry
>
focusedElement
:
null
;
}
setKeybindingSource
(
searchString
:
string
):
TPromise
<
any
>
{
this
.
searchWidget
.
setValue
(
searchString
);
return
TPromise
.
as
(
null
);
}
showDefaultKeyBindings
():
IAction
{
return
<
IAction
>
{
label
:
localize
(
'
showDefaultKeybindings
'
,
"
Show Default Keybindings
"
),
enabled
:
true
,
id
:
KEYBINDINGS_EDITOR_SHOW_DEFAULT_KEYBINDINGS
,
run
:
()
=>
this
.
setKeybindingSource
(
'
source: default
'
)
};
}
showUserKeyBindings
():
IAction
{
return
<
IAction
>
{
label
:
localize
(
'
showUserKeybindings
'
,
"
Show User Keybindings
"
),
enabled
:
true
,
id
:
KEYBINDINGS_EDITOR_SHOW_USER_KEYBINDINGS
,
run
:
()
=>
this
.
setKeybindingSource
(
'
source: user
'
)
};
}
getSecondaryActions
():
IAction
[]
{
if
(
!
this
.
secondaryActions
)
{
this
.
secondaryActions
=
[
this
.
showDefaultKeyBindings
(),
this
.
showUserKeyBindings
(),
];
}
return
this
.
secondaryActions
;
return
<
IAction
[]
>
[
<
IAction
>
{
label
:
localize
(
'
showDefaultKeybindings
'
,
"
Show Default Keybindings
"
),
enabled
:
true
,
id
:
KEYBINDINGS_EDITOR_SHOW_DEFAULT_KEYBINDINGS
,
run
:
():
TPromise
<
any
>
=>
{
this
.
searchWidget
.
setValue
(
'
@source: default
'
);
return
TPromise
.
as
(
null
);
}
},
<
IAction
>
{
label
:
localize
(
'
showUserKeybindings
'
,
"
Show User Keybindings
"
),
enabled
:
true
,
id
:
KEYBINDINGS_EDITOR_SHOW_USER_KEYBINDINGS
,
run
:
():
TPromise
<
any
>
=>
{
this
.
searchWidget
.
setValue
(
'
@source: user
'
);
return
TPromise
.
as
(
null
);
}
}
];
}
defineKeybinding
(
keybindingEntry
:
IKeybindingItemEntry
):
TPromise
<
any
>
{
...
...
@@ -245,10 +234,10 @@ export class KeybindingsEditor extends BaseEditor implements IKeybindingsEditor
this
.
reportKeybindingAction
(
KEYBINDINGS_EDITOR_COMMAND_REMOVE
,
keybindingEntry
.
keybindingItem
.
command
,
keybindingEntry
.
keybindingItem
.
keybinding
);
return
this
.
keybindingEditingService
.
removeKeybinding
(
keybindingEntry
.
keybindingItem
.
keybindingItem
)
.
then
(()
=>
this
.
focus
(),
error
=>
{
this
.
onKeybindingEditingError
(
error
);
this
.
selectEntry
(
keybindingEntry
);
});
error
=>
{
this
.
onKeybindingEditingError
(
error
);
this
.
selectEntry
(
keybindingEntry
);
});
}
return
TPromise
.
as
(
null
);
}
...
...
@@ -263,10 +252,10 @@ export class KeybindingsEditor extends BaseEditor implements IKeybindingsEditor
}
this
.
selectEntry
(
keybindingEntry
);
},
error
=>
{
this
.
onKeybindingEditingError
(
error
);
this
.
selectEntry
(
keybindingEntry
);
});
error
=>
{
this
.
onKeybindingEditingError
(
error
);
this
.
selectEntry
(
keybindingEntry
);
});
}
copyKeybinding
(
keybinding
:
IKeybindingItemEntry
):
TPromise
<
any
>
{
...
...
src/vs/workbench/parts/preferences/common/keybindingsEditorModel.ts
浏览文件 @
8510c24e
...
...
@@ -250,7 +250,7 @@ class KeybindingItemMatches {
private
checkForSourceFilter
(
searchValue
:
string
)
{
const
words
=
searchValue
.
split
(
'
:
'
);
return
(
words
.
length
)
&&
(
words
[
0
].
trim
().
toLowerCase
()
===
'
source
'
)
?
return
(
words
.
length
)
&&
(
words
[
0
].
trim
().
toLowerCase
()
===
'
@
source
'
)
?
words
[
1
].
trim
()
:
searchValue
;
}
...
...
src/vs/workbench/parts/preferences/test/common/keybindingsEditorModel.test.ts
浏览文件 @
8510c24e
...
...
@@ -258,15 +258,24 @@ suite('Keybindings Editor Model test', () => {
});
});
test
(
'
filter by
source: filter
'
,
()
=>
{
test
(
'
filter by
default source with "source: " prefix
'
,
()
=>
{
const
command
=
'
a
'
+
uuid
.
generateUuid
();
const
expected
=
aResolvedKeybindingItem
({
command
,
firstPart
:
{
keyCode
:
KeyCode
.
Escape
},
when
:
'
context1 && context2
'
,
isDefault
:
fals
e
});
const
expected
=
aResolvedKeybindingItem
({
command
,
firstPart
:
{
keyCode
:
KeyCode
.
Escape
},
when
:
'
context1 && context2
'
,
isDefault
:
tru
e
});
prepareKeybindingService
(
expected
);
return
testObject
.
resolve
({}).
then
(()
=>
{
let
actual
=
testObject
.
fetch
(
'
source: user
'
).
filter
(
element
=>
element
.
keybindingItem
.
command
===
command
)[
0
];
const
actual
=
testObject
.
fetch
(
'
source: default
'
).
filter
(
element
=>
element
.
keybindingItem
.
command
===
command
)[
0
];
assert
.
ok
(
actual
);
actual
=
testObject
.
fetch
(
'
source: default
'
).
filter
(
element
=>
element
.
keybindingItem
.
command
===
command
)[
0
];
});
});
test
(
'
filter by user source with "source: " prefix
'
,
()
=>
{
const
command
=
'
a
'
+
uuid
.
generateUuid
();
const
expected
=
aResolvedKeybindingItem
({
command
,
firstPart
:
{
keyCode
:
KeyCode
.
Escape
},
when
:
'
context1 && context2
'
,
isDefault
:
false
});
prepareKeybindingService
(
expected
);
return
testObject
.
resolve
({}).
then
(()
=>
{
const
actual
=
testObject
.
fetch
(
'
source: user
'
).
filter
(
element
=>
element
.
keybindingItem
.
command
===
command
)[
0
];
assert
.
ok
(
actual
);
});
});
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录