Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
xxadev
vscode
提交
0dda1c30
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,发现更多精彩内容 >>
提交
0dda1c30
编写于
4月 10, 2017
作者:
S
Sandeep Somavarapu
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Fix #15116
上级
114160d2
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
30 addition
and
4 deletion
+30
-4
src/vs/editor/contrib/find/common/findController.ts
src/vs/editor/contrib/find/common/findController.ts
+1
-1
src/vs/editor/contrib/find/test/common/findController.test.ts
...vs/editor/contrib/find/test/common/findController.test.ts
+29
-3
未找到文件。
src/vs/editor/contrib/find/common/findController.ts
浏览文件 @
0dda1c30
...
@@ -46,7 +46,7 @@ export class CommonFindController extends Disposable implements editorCommon.IEd
...
@@ -46,7 +46,7 @@ export class CommonFindController extends Disposable implements editorCommon.IEd
private
_findWidgetVisible
:
IContextKey
<
boolean
>
;
private
_findWidgetVisible
:
IContextKey
<
boolean
>
;
protected
_state
:
FindReplaceState
;
protected
_state
:
FindReplaceState
;
private
_currentHistoryNavigator
:
HistoryNavigator
<
string
>
;
private
_currentHistoryNavigator
:
HistoryNavigator
<
string
>
;
pr
ivate
_updateHistoryDelayer
:
Delayer
<
void
>
;
pr
otected
_updateHistoryDelayer
:
Delayer
<
void
>
;
private
_model
:
FindModelBoundToEditorModel
;
private
_model
:
FindModelBoundToEditorModel
;
public
static
get
(
editor
:
editorCommon
.
ICommonCodeEditor
):
CommonFindController
{
public
static
get
(
editor
:
editorCommon
.
ICommonCodeEditor
):
CommonFindController
{
...
...
src/vs/editor/contrib/find/test/common/findController.test.ts
浏览文件 @
0dda1c30
...
@@ -5,11 +5,13 @@
...
@@ -5,11 +5,13 @@
'
use strict
'
;
'
use strict
'
;
import
*
as
assert
from
'
assert
'
;
import
*
as
assert
from
'
assert
'
;
import
{
TPromise
}
from
'
vs/base/common/winjs.base
'
;
import
{
Emitter
}
from
'
vs/base/common/event
'
;
import
{
EditOperation
}
from
'
vs/editor/common/core/editOperation
'
;
import
{
EditOperation
}
from
'
vs/editor/common/core/editOperation
'
;
import
{
Position
}
from
'
vs/editor/common/core/position
'
;
import
{
Position
}
from
'
vs/editor/common/core/position
'
;
import
{
Selection
}
from
'
vs/editor/common/core/selection
'
;
import
{
Selection
}
from
'
vs/editor/common/core/selection
'
;
import
{
Range
}
from
'
vs/editor/common/core/range
'
;
import
{
Range
}
from
'
vs/editor/common/core/range
'
;
import
{
IRange
,
EndOfLineSequence
}
from
'
vs/editor/common/editorCommon
'
;
import
{
IRange
,
EndOfLineSequence
,
ICommonCodeEditor
}
from
'
vs/editor/common/editorCommon
'
;
import
{
import
{
CommonFindController
,
FindStartFocusAction
,
IFindStartOptions
,
CommonFindController
,
FindStartFocusAction
,
IFindStartOptions
,
NextMatchFindAction
,
StartFindAction
,
SelectHighlightsAction
,
NextMatchFindAction
,
StartFindAction
,
SelectHighlightsAction
,
...
@@ -17,11 +19,21 @@ import {
...
@@ -17,11 +19,21 @@ import {
}
from
'
vs/editor/contrib/find/common/findController
'
;
}
from
'
vs/editor/contrib/find/common/findController
'
;
import
{
MockCodeEditor
,
withMockCodeEditor
}
from
'
vs/editor/test/common/mocks/mockCodeEditor
'
;
import
{
MockCodeEditor
,
withMockCodeEditor
}
from
'
vs/editor/test/common/mocks/mockCodeEditor
'
;
import
{
HistoryNavigator
}
from
'
vs/base/common/history
'
;
import
{
HistoryNavigator
}
from
'
vs/base/common/history
'
;
import
{
IContextKeyService
}
from
'
vs/platform/contextkey/common/contextkey
'
;
import
{
Delayer
}
from
'
vs/base/common/async
'
;
class
TestFindController
extends
CommonFindController
{
class
TestFindController
extends
CommonFindController
{
public
hasFocus
:
boolean
;
public
hasFocus
:
boolean
;
public
delayUpdateHistory
:
boolean
=
false
;
public
delayUpdateHistory
:
boolean
=
false
;
public
delayedUpdateHistoryPromise
:
TPromise
<
void
>
;
private
_delayedUpdateHistoryEvent
:
Emitter
<
void
>
=
new
Emitter
<
void
>
();
constructor
(
editor
:
ICommonCodeEditor
,
@
IContextKeyService
contextKeyService
:
IContextKeyService
)
{
super
(
editor
,
contextKeyService
);
this
.
_updateHistoryDelayer
=
new
Delayer
<
void
>
(
50
);
}
protected
_start
(
opts
:
IFindStartOptions
):
void
{
protected
_start
(
opts
:
IFindStartOptions
):
void
{
super
.
_start
(
opts
);
super
.
_start
(
opts
);
...
@@ -32,12 +44,26 @@ class TestFindController extends CommonFindController {
...
@@ -32,12 +44,26 @@ class TestFindController extends CommonFindController {
}
}
protected
_delayedUpdateHistory
()
{
protected
_delayedUpdateHistory
()
{
if
(
!
this
.
delayedUpdateHistoryPromise
)
{
this
.
delayedUpdateHistoryPromise
=
new
TPromise
<
void
>
((
c
,
e
)
=>
{
const
disposable
=
this
.
_delayedUpdateHistoryEvent
.
event
(()
=>
{
disposable
.
dispose
();
this
.
delayedUpdateHistoryPromise
=
null
;
c
(
null
);
});
});
}
if
(
this
.
delayUpdateHistory
)
{
if
(
this
.
delayUpdateHistory
)
{
super
.
_delayedUpdateHistory
();
super
.
_delayedUpdateHistory
();
}
else
{
}
else
{
this
.
_updateHistory
();
this
.
_updateHistory
();
}
}
}
}
protected
_updateHistory
()
{
super
.
_updateHistory
();
this
.
_delayedUpdateHistoryEvent
.
fire
();
}
}
}
suite
(
'
FindController
'
,
()
=>
{
suite
(
'
FindController
'
,
()
=>
{
...
@@ -237,10 +263,10 @@ suite('FindController', () => {
...
@@ -237,10 +263,10 @@ suite('FindController', () => {
findController
.
getState
().
change
({
searchString
:
'
2
'
},
false
);
findController
.
getState
().
change
({
searchString
:
'
2
'
},
false
);
findController
.
getState
().
change
({
searchString
:
'
3
'
},
false
);
findController
.
getState
().
change
({
searchString
:
'
3
'
},
false
);
setTimeout
(
function
()
{
findController
.
delayedUpdateHistoryPromise
.
then
(()
=>
{
assert
.
deepEqual
([
'
3
'
],
toArray
(
findController
.
getHistory
()));
assert
.
deepEqual
([
'
3
'
],
toArray
(
findController
.
getHistory
()));
done
();
done
();
}
,
500
);
});
});
});
});
});
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录