Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
xxadev
vscode
提交
ab3bc1e7
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,发现更多精彩内容 >>
提交
ab3bc1e7
编写于
12月 03, 2018
作者:
M
Matt Bierner
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Revert "call resolve before inserting a completion item, #63013"
This reverts commit
c2c2e48d
.
上级
64117e8f
变更
3
隐藏空白更改
内联
并排
Showing
3 changed file
with
10 addition
and
10 deletion
+10
-10
src/vs/editor/contrib/suggest/suggestController.ts
src/vs/editor/contrib/suggest/suggestController.ts
+3
-6
src/vs/editor/contrib/suggest/suggestWidget.ts
src/vs/editor/contrib/suggest/suggestWidget.ts
+6
-3
src/vs/editor/contrib/suggest/test/suggestModel.test.ts
src/vs/editor/contrib/suggest/test/suggestModel.test.ts
+1
-1
未找到文件。
src/vs/editor/contrib/suggest/suggestController.ts
浏览文件 @
ab3bc1e7
...
...
@@ -32,7 +32,6 @@ import { WordContextKey } from 'vs/editor/contrib/suggest/wordContextKey';
import
{
once
,
anyEvent
}
from
'
vs/base/common/event
'
;
import
{
IEditorWorkerService
}
from
'
vs/editor/common/services/editorWorkerService
'
;
import
{
IdleValue
}
from
'
vs/base/common/async
'
;
import
{
CancellationToken
}
from
'
vs/base/common/cancellation
'
;
class
AcceptOnCharacterOracle
{
...
...
@@ -154,7 +153,7 @@ export class SuggestController implements IEditorContribution {
private
_createSuggestWidget
():
void
{
this
.
_widget
=
this
.
_instantiationService
.
createInstance
(
SuggestWidget
,
this
.
_editor
);
this
.
_toDispose
.
push
(
this
.
_widget
.
onDidSelect
(
item
=>
this
.
_onDidSelectItem
(
item
,
false
,
true
)));
this
.
_toDispose
.
push
(
this
.
_widget
.
onDidSelect
(
item
=>
this
.
_onDidSelectItem
(
item
,
false
,
true
)
,
this
));
// Wire up logic to accept a suggestion on certain characters
const
autoAcceptOracle
=
new
AcceptOnCharacterOracle
(
this
.
_editor
,
this
.
_widget
,
item
=>
this
.
_onDidSelectItem
(
item
,
false
,
true
));
...
...
@@ -213,15 +212,13 @@ export class SuggestController implements IEditorContribution {
}
}
protected
async
_onDidSelectItem
(
event
:
ISelectedSuggestion
,
keepAlternativeSuggestions
:
boolean
,
undoStops
:
boolean
):
Promise
<
void
>
{
protected
_onDidSelectItem
(
event
:
ISelectedSuggestion
,
keepAlternativeSuggestions
:
boolean
,
undoStops
:
boolean
):
void
{
if
(
!
event
||
!
event
.
item
)
{
this
.
_alternatives
.
getValue
().
reset
();
this
.
_model
.
cancel
();
return
;
}
await
event
.
item
.
resolve
(
CancellationToken
.
None
);
const
model
=
this
.
_editor
.
getModel
();
const
modelVersionNow
=
model
.
getAlternativeVersionId
();
const
{
suggestion
,
position
}
=
event
.
item
;
...
...
@@ -271,7 +268,7 @@ export class SuggestController implements IEditorContribution {
}
else
{
// exec command, done
this
.
_commandService
.
executeCommand
(
suggestion
.
command
.
id
,
...
suggestion
.
command
.
arguments
).
catch
(
onUnexpectedError
);
this
.
_commandService
.
executeCommand
(
suggestion
.
command
.
id
,
...
suggestion
.
command
.
arguments
).
then
(
undefined
,
onUnexpectedError
);
this
.
_model
.
cancel
();
}
...
...
src/vs/editor/contrib/suggest/suggestWidget.ts
浏览文件 @
ab3bc1e7
...
...
@@ -30,6 +30,7 @@ import { MarkdownRenderer } from 'vs/editor/contrib/markdown/markdownRenderer';
import
{
IModeService
}
from
'
vs/editor/common/services/modeService
'
;
import
{
IOpenerService
}
from
'
vs/platform/opener/common/opener
'
;
import
{
TimeoutTimer
,
CancelablePromise
,
createCancelablePromise
}
from
'
vs/base/common/async
'
;
import
{
CancellationToken
}
from
'
vs/base/common/cancellation
'
;
import
{
CompletionItemKind
,
completionKindToCssClass
}
from
'
vs/editor/common/modes
'
;
import
{
IconLabel
,
IIconLabelValueOptions
}
from
'
vs/base/browser/ui/iconLabel/iconLabel
'
;
import
{
getIconClasses
}
from
'
vs/editor/common/services/getIconClasses
'
;
...
...
@@ -520,9 +521,11 @@ export class SuggestWidget implements IContentWidget, IListVirtualDelegate<IComp
const
item
=
e
.
elements
[
0
];
const
index
=
e
.
indexes
[
0
];
this
.
onDidSelectEmitter
.
fire
({
item
,
index
,
model
:
this
.
completionModel
});
alert
(
nls
.
localize
(
'
suggestionAriaAccepted
'
,
"
{0}, accepted
"
,
item
.
suggestion
.
label
));
this
.
editor
.
focus
();
item
.
resolve
(
CancellationToken
.
None
).
then
(()
=>
{
this
.
onDidSelectEmitter
.
fire
({
item
,
index
,
model
:
this
.
completionModel
});
alert
(
nls
.
localize
(
'
suggestionAriaAccepted
'
,
"
{0}, accepted
"
,
item
.
suggestion
.
label
));
this
.
editor
.
focus
();
});
}
private
_getSuggestionAriaAlertLabel
(
item
:
ICompletionItem
):
string
{
...
...
src/vs/editor/contrib/suggest/test/suggestModel.test.ts
浏览文件 @
ab3bc1e7
...
...
@@ -666,7 +666,7 @@ suite('SuggestModel - TriggerAndCancelOracle', function () {
return
withOracle
(
async
(
sugget
,
editor
)
=>
{
class
TestCtrl
extends
SuggestController
{
_onDidSelectItem
(
item
:
ISelectedSuggestion
)
{
return
super
.
_onDidSelectItem
(
item
,
false
,
true
);
super
.
_onDidSelectItem
(
item
,
false
,
true
);
}
}
const
ctrl
=
<
TestCtrl
>
editor
.
registerAndInstantiateContribution
(
TestCtrl
);
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录