Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
xxadev
vscode
提交
6d49c7a8
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,发现更多精彩内容 >>
未验证
提交
6d49c7a8
编写于
7月 16, 2019
作者:
R
Rob Lourens
提交者:
GitHub
7月 16, 2019
浏览文件
操作
浏览文件
下载
差异文件
Merge pull request #76828 from skprabhanjan/fix-75259
Fix-75259 - Interact with files in search results
上级
dbf2651e
08b3fd57
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
37 addition
and
4 deletion
+37
-4
src/vs/workbench/contrib/search/browser/search.contribution.ts
...s/workbench/contrib/search/browser/search.contribution.ts
+36
-4
src/vs/workbench/contrib/search/common/constants.ts
src/vs/workbench/contrib/search/common/constants.ts
+1
-0
未找到文件。
src/vs/workbench/contrib/search/browser/search.contribution.ts
浏览文件 @
6d49c7a8
...
...
@@ -5,7 +5,7 @@
import
{
Action
}
from
'
vs/base/common/actions
'
;
import
{
distinct
}
from
'
vs/base/common/arrays
'
;
import
{
illegalArgument
}
from
'
vs/base/common/errors
'
;
import
{
illegalArgument
,
onUnexpectedError
}
from
'
vs/base/common/errors
'
;
import
{
KeyCode
,
KeyMod
}
from
'
vs/base/common/keyCodes
'
;
import
*
as
objects
from
'
vs/base/common/objects
'
;
import
*
as
platform
from
'
vs/base/common/platform
'
;
...
...
@@ -38,7 +38,7 @@ import { Extensions as ActionExtensions, IWorkbenchActionRegistry } from 'vs/wor
import
{
Extensions
as
WorkbenchExtensions
,
IWorkbenchContribution
,
IWorkbenchContributionsRegistry
}
from
'
vs/workbench/common/contributions
'
;
import
{
Extensions
as
ViewExtensions
,
IViewsRegistry
}
from
'
vs/workbench/common/views
'
;
import
{
getMultiSelectedResources
}
from
'
vs/workbench/contrib/files/browser/files
'
;
import
{
ExplorerFolderContext
,
ExplorerRootContext
,
FilesExplorerFocusCondition
}
from
'
vs/workbench/contrib/files/common/files
'
;
import
{
ExplorerFolderContext
,
ExplorerRootContext
,
FilesExplorerFocusCondition
,
IExplorerService
,
VIEWLET_ID
as
VIEWLET_ID_FILES
}
from
'
vs/workbench/contrib/files/common/files
'
;
import
{
OpenAnythingHandler
}
from
'
vs/workbench/contrib/search/browser/openAnythingHandler
'
;
import
{
OpenSymbolHandler
}
from
'
vs/workbench/contrib/search/browser/openSymbolHandler
'
;
import
{
registerContributions
as
replaceContributions
}
from
'
vs/workbench/contrib/search/browser/replaceContributions
'
;
...
...
@@ -50,12 +50,13 @@ import { registerContributions as searchWidgetContributions } from 'vs/workbench
import
*
as
Constants
from
'
vs/workbench/contrib/search/common/constants
'
;
import
{
getWorkspaceSymbols
}
from
'
vs/workbench/contrib/search/common/search
'
;
import
{
ISearchHistoryService
,
SearchHistoryService
}
from
'
vs/workbench/contrib/search/common/searchHistoryService
'
;
import
{
FileMatchOrMatch
,
ISearchWorkbenchService
,
RenderableMatch
,
SearchWorkbenchService
}
from
'
vs/workbench/contrib/search/common/searchModel
'
;
import
{
FileMatchOrMatch
,
ISearchWorkbenchService
,
RenderableMatch
,
SearchWorkbenchService
,
FileMatch
}
from
'
vs/workbench/contrib/search/common/searchModel
'
;
import
{
IEditorService
}
from
'
vs/workbench/services/editor/common/editorService
'
;
import
{
IPanelService
}
from
'
vs/workbench/services/panel/common/panelService
'
;
import
{
ISearchConfiguration
,
ISearchConfigurationProperties
,
PANEL_ID
,
VIEWLET_ID
,
VIEW_CONTAINER
,
VIEW_ID
}
from
'
vs/workbench/services/search/common/search
'
;
import
{
IViewletService
}
from
'
vs/workbench/services/viewlet/browser/viewlet
'
;
import
{
IWorkspaceContextService
}
from
'
vs/platform/workspace/common/workspace
'
;
import
{
ExplorerViewlet
}
from
'
vs/workbench/contrib/files/browser/explorerViewlet
'
;
registerSingleton
(
ISearchWorkbenchService
,
SearchWorkbenchService
,
true
);
registerSingleton
(
ISearchHistoryService
,
SearchHistoryService
,
true
);
...
...
@@ -212,6 +213,37 @@ KeybindingsRegistry.registerCommandAndKeybindingRule({
}
});
CommandsRegistry
.
registerCommand
({
id
:
Constants
.
RevealInSideBarForSearchResults
,
handler
:
(
accessor
,
fileMatch
:
FileMatch
)
=>
{
const
viewletService
=
accessor
.
get
(
IViewletService
);
const
explorerService
=
accessor
.
get
(
IExplorerService
);
const
contextService
=
accessor
.
get
(
IWorkspaceContextService
);
const
uri
=
fileMatch
.
resource
();
viewletService
.
openViewlet
(
VIEWLET_ID_FILES
,
false
).
then
((
viewlet
:
ExplorerViewlet
)
=>
{
if
(
uri
&&
contextService
.
isInsideWorkspace
(
uri
))
{
const
explorerView
=
viewlet
.
getExplorerView
();
if
(
explorerView
)
{
explorerView
.
setExpanded
(
true
);
explorerService
.
select
(
uri
,
true
).
then
(()
=>
explorerView
.
focus
(),
onUnexpectedError
);
}
}
});
}
});
const
RevealInSideBarForSearchResultsCommand
:
ICommandAction
=
{
id
:
Constants
.
RevealInSideBarForSearchResults
,
title
:
nls
.
localize
(
'
revealInSideBar
'
,
"
Reveal in Explorer
"
)
};
MenuRegistry
.
appendMenuItem
(
MenuId
.
SearchContext
,
{
command
:
RevealInSideBarForSearchResultsCommand
,
when
:
ContextKeyExpr
.
and
(
Constants
.
FileFocusKey
,
Constants
.
HasSearchResults
),
group
:
'
2_files
'
,
});
MenuRegistry
.
appendMenuItem
(
MenuId
.
SearchContext
,
{
command
:
{
id
:
Constants
.
ReplaceActionId
,
...
...
src/vs/workbench/contrib/search/common/constants.ts
浏览文件 @
6d49c7a8
...
...
@@ -24,6 +24,7 @@ export const CloseReplaceWidgetActionId = 'closeReplaceInFilesWidget';
export
const
ToggleCaseSensitiveCommandId
=
'
toggleSearchCaseSensitive
'
;
export
const
ToggleWholeWordCommandId
=
'
toggleSearchWholeWord
'
;
export
const
ToggleRegexCommandId
=
'
toggleSearchRegex
'
;
export
const
RevealInSideBarForSearchResults
=
'
search.action.revealInSideBar
'
;
export
const
ToggleSearchViewPositionCommandId
=
'
search.action.toggleSearchViewPosition
'
;
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录