Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
xxadev
vscode
提交
e4a77a80
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,发现更多精彩内容 >>
提交
e4a77a80
编写于
8月 12, 2020
作者:
J
Jackson Kearl
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Fix #100328: search view: preserve last focused item
上级
ff5a252d
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
12 addition
and
2 deletion
+12
-2
src/vs/workbench/contrib/search/browser/searchView.ts
src/vs/workbench/contrib/search/browser/searchView.ts
+12
-2
未找到文件。
src/vs/workbench/contrib/search/browser/searchView.ts
浏览文件 @
e4a77a80
...
...
@@ -110,6 +110,7 @@ export class SearchView extends ViewPane {
private
folderMatchFocused
:
IContextKey
<
boolean
>
;
private
matchFocused
:
IContextKey
<
boolean
>
;
private
hasSearchResultsKey
:
IContextKey
<
boolean
>
;
private
lastFocusState
:
'
input
'
|
'
tree
'
=
'
input
'
;
private
state
:
SearchUIState
=
SearchUIState
.
Idle
;
...
...
@@ -376,6 +377,9 @@ export class SearchView extends ViewPane {
this
.
updateActions
();
this
.
updatedActionsWhileHidden
=
false
;
}
}
else
{
// Reset last focus to input to preserve opening the viewlet always focusing the query editor.
this
.
lastFocusState
=
'
input
'
;
}
// Enable highlights if there are searchresults
...
...
@@ -476,6 +480,7 @@ export class SearchView extends ViewPane {
private
trackInputBox
(
inputFocusTracker
:
dom
.
IFocusTracker
,
contextKey
?:
IContextKey
<
boolean
>
):
void
{
this
.
_register
(
inputFocusTracker
.
onDidFocus
(()
=>
{
this
.
lastFocusState
=
'
input
'
;
this
.
inputBoxFocused
.
set
(
true
);
if
(
contextKey
)
{
contextKey
.
set
(
true
);
...
...
@@ -751,6 +756,7 @@ export class SearchView extends ViewPane {
this
.
matchFocused
.
set
(
focus
instanceof
Match
);
this
.
fileMatchOrFolderMatchFocus
.
set
(
focus
instanceof
FileMatch
||
focus
instanceof
FolderMatch
);
this
.
fileMatchOrFolderMatchWithResourceFocus
.
set
(
focus
instanceof
FileMatch
||
focus
instanceof
FolderMatchWithResource
);
this
.
lastFocusState
=
'
tree
'
;
}
}));
...
...
@@ -874,8 +880,12 @@ export class SearchView extends ViewPane {
focus
():
void
{
super
.
focus
();
const
updatedText
=
this
.
searchConfig
.
seedOnFocus
?
this
.
updateTextFromSelection
({
allowSearchOnType
:
false
})
:
false
;
this
.
searchWidget
.
focus
(
undefined
,
undefined
,
updatedText
);
if
(
this
.
lastFocusState
===
'
input
'
||
!
this
.
hasSearchResults
())
{
const
updatedText
=
this
.
searchConfig
.
seedOnFocus
?
this
.
updateTextFromSelection
({
allowSearchOnType
:
false
})
:
false
;
this
.
searchWidget
.
focus
(
undefined
,
undefined
,
updatedText
);
}
else
{
this
.
tree
.
domFocus
();
}
}
updateTextFromSelection
({
allowUnselectedWord
=
true
,
allowSearchOnType
=
true
}):
boolean
{
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录