Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
掘金者说
vscode
提交
66e66600
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,发现更多精彩内容 >>
提交
66e66600
编写于
3月 09, 2020
作者:
B
Benjamin Pasero
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
quick access - prepare for merge to master
上级
7edc0a4e
变更
7
隐藏空白更改
内联
并排
Showing
7 changed file
with
54 addition
and
44 deletion
+54
-44
src/vs/base/parts/quickinput/browser/quickInput.ts
src/vs/base/parts/quickinput/browser/quickInput.ts
+3
-4
src/vs/editor/standalone/browser/quickInput/standaloneQuickInputServiceImpl.ts
...one/browser/quickInput/standaloneQuickInputServiceImpl.ts
+1
-4
src/vs/workbench/browser/parts/quickopen/quickopen.ts
src/vs/workbench/browser/parts/quickopen/quickopen.ts
+2
-33
src/vs/workbench/contrib/quickaccess/browser/quickAccess.contribution.ts
...h/contrib/quickaccess/browser/quickAccess.contribution.ts
+16
-2
src/vs/workbench/contrib/quickaccess/browser/quickAccessCommands.ts
...kbench/contrib/quickaccess/browser/quickAccessCommands.ts
+28
-0
src/vs/workbench/test/browser/quickAccess.test.ts
src/vs/workbench/test/browser/quickAccess.test.ts
+3
-0
src/vs/workbench/test/browser/workbenchTestServices.ts
src/vs/workbench/test/browser/workbenchTestServices.ts
+1
-1
未找到文件。
src/vs/base/parts/quickinput/browser/quickInput.ts
浏览文件 @
66e66600
...
...
@@ -129,10 +129,6 @@ type Visibilities = {
class
QuickInput
extends
Disposable
implements
IQuickInput
{
private
readonly
onDidTriggerButtonEmitter
=
this
.
_register
(
new
Emitter
<
IQuickInputButton
>
());
private
readonly
onDidHideEmitter
=
this
.
_register
(
new
Emitter
<
void
>
());
private
readonly
onDisposeEmitter
=
this
.
_register
(
new
Emitter
<
void
>
());
private
_title
:
string
|
undefined
;
private
_description
:
string
|
undefined
;
private
_steps
:
number
|
undefined
;
...
...
@@ -144,6 +140,9 @@ class QuickInput extends Disposable implements IQuickInput {
private
_ignoreFocusOut
=
false
;
private
_buttons
:
IQuickInputButton
[]
=
[];
private
buttonsUpdated
=
false
;
private
readonly
onDidTriggerButtonEmitter
=
this
.
_register
(
new
Emitter
<
IQuickInputButton
>
());
private
readonly
onDidHideEmitter
=
this
.
_register
(
new
Emitter
<
void
>
());
private
readonly
onDisposeEmitter
=
this
.
_register
(
new
Emitter
<
void
>
());
protected
readonly
visibleDisposables
=
this
.
_register
(
new
DisposableStore
());
...
...
src/vs/editor/standalone/browser/quickInput/standaloneQuickInputServiceImpl.ts
浏览文件 @
66e66600
...
...
@@ -145,10 +145,7 @@ export class QuickInputEditorContribution implements IEditorContribution {
readonly
widget
=
new
QuickInputEditorWidget
(
this
.
editor
);
constructor
(
private
editor
:
ICodeEditor
,
@
IQuickInputService
quickInputService
:
IQuickInputService
)
{
// TODO@ben remove me - only for testing
once
(
editor
.
onDidFocusEditorText
)(()
=>
quickInputService
.
quickAccess
.
show
(
''
));
}
constructor
(
private
editor
:
ICodeEditor
)
{
}
dispose
():
void
{
this
.
widget
.
dispose
();
...
...
src/vs/workbench/browser/parts/quickopen/quickopen.ts
浏览文件 @
66e66600
...
...
@@ -6,17 +6,15 @@
import
*
as
nls
from
'
vs/nls
'
;
import
{
Action
}
from
'
vs/base/common/actions
'
;
import
{
IQuickOpenService
}
from
'
vs/platform/quickOpen/common/quickOpen
'
;
import
{
IQuickInputService
,
IQuickPick
,
IQuickPickItem
}
from
'
vs/platform/quickinput/common/quickInput
'
;
import
{
IQuickInputService
}
from
'
vs/platform/quickinput/common/quickInput
'
;
import
{
IKeybindingService
}
from
'
vs/platform/keybinding/common/keybinding
'
;
import
{
ContextKeyExpr
,
RawContextKey
,
IContextKeyService
}
from
'
vs/platform/contextkey/common/contextkey
'
;
import
{
ICommandHandler
,
CommandsRegistry
}
from
'
vs/platform/commands/common/commands
'
;
import
{
ServicesAccessor
}
from
'
vs/platform/instantiation/common/instantiation
'
;
import
{
Disposable
,
IDisposable
}
from
'
vs/base/common/lifecycle
'
;
import
{
Disposable
}
from
'
vs/base/common/lifecycle
'
;
import
{
IWorkbenchContributionsRegistry
,
Extensions
as
WorkbenchExtensions
}
from
'
vs/workbench/common/contributions
'
;
import
{
LifecyclePhase
}
from
'
vs/platform/lifecycle/common/lifecycle
'
;
import
{
Registry
}
from
'
vs/platform/registry/common/platform
'
;
import
{
IQuickAccessProvider
,
IQuickAccessRegistry
,
Extensions
as
QuickInputExtensions
}
from
'
vs/platform/quickinput/common/quickAccess
'
;
import
{
CancellationToken
}
from
'
vs/base/common/cancellation
'
;
const
inQuickOpenKey
=
'
inQuickOpen
'
;
export
const
InQuickOpenContextKey
=
new
RawContextKey
<
boolean
>
(
inQuickOpenKey
,
false
);
...
...
@@ -167,8 +165,6 @@ export class LegacyQuickInputQuickOpenController extends Disposable {
super
();
this
.
registerListeners
();
setTimeout
(()
=>
this
.
quickInputService
.
quickAccess
.
show
(
'
?
'
),
0
);
}
private
registerListeners
():
void
{
...
...
@@ -207,30 +203,3 @@ export class LegacyQuickInputQuickOpenController extends Disposable {
}
Registry
.
as
<
IWorkbenchContributionsRegistry
>
(
WorkbenchExtensions
.
Workbench
).
registerWorkbenchContribution
(
LegacyQuickInputQuickOpenController
,
LifecyclePhase
.
Ready
);
class
SampleQuickAccessProvider
implements
IQuickAccessProvider
{
provide
(
picker
:
IQuickPick
<
IQuickPickItem
>
,
token
:
CancellationToken
):
IDisposable
{
picker
.
items
=
[
{
label
:
'
Hello World
'
},
{
label
:
'
Lorem Ipsum
'
},
{
label
:
'
Something Else
'
}
];
return
Disposable
.
None
;
}
}
const
quickAccessRegistry
=
Registry
.
as
<
IQuickAccessRegistry
>
(
QuickInputExtensions
.
Quickaccess
);
[
''
/*, '>', '@', ':', 'edt', 'edt active', 'edt mru', 'view'*/
].
forEach
(
prefix
=>
{
const
provider
=
{
ctor
:
SampleQuickAccessProvider
,
prefix
,
helpEntries
:
[{
description
:
`Sample Provider with prefix
${
prefix
}
`
,
needsEditor
:
prefix
===
'
@
'
||
prefix
===
'
:
'
}]
};
if
(
!
prefix
)
{
quickAccessRegistry
.
defaultProvider
=
provider
;
}
else
{
quickAccessRegistry
.
registerQuickAccessProvider
(
provider
);
}
});
src/vs/workbench/contrib/quickaccess/browser/quickAccess.contribution.ts
浏览文件 @
66e66600
...
...
@@ -8,15 +8,29 @@ import { IQuickAccessRegistry, Extensions } from 'vs/platform/quickinput/common/
import
{
Registry
}
from
'
vs/platform/registry/common/platform
'
;
import
{
HelpQuickAccessProvider
}
from
'
vs/platform/quickinput/browser/helpQuickAccess
'
;
import
{
ViewQuickAccessProvider
,
VIEW_QUICK_ACCESS_PREFIX
}
from
'
vs/workbench/contrib/quickaccess/browser/viewQuickAccess
'
;
import
{
QUICK_ACCESS_COMMAND_ID
}
from
'
vs/workbench/contrib/quickaccess/browser/quickAccessCommands
'
;
import
{
MenuRegistry
,
MenuId
}
from
'
vs/platform/actions/common/actions
'
;
Registry
.
as
<
IQuickAccessRegistry
>
(
Extensions
.
Quickaccess
).
registerQuickAccessProvider
(
{
const
helpQuickAccessProvider
=
{
ctor
:
HelpQuickAccessProvider
,
prefix
:
'
?
'
,
helpEntries
:
[{
description
:
localize
(
'
helpQuickAccess
'
,
"
Show all Quick Access Providers
"
),
needsEditor
:
false
}]
});
};
Registry
.
as
<
IQuickAccessRegistry
>
(
Extensions
.
Quickaccess
).
registerQuickAccessProvider
(
helpQuickAccessProvider
);
Registry
.
as
<
IQuickAccessRegistry
>
(
Extensions
.
Quickaccess
).
defaultProvider
=
helpQuickAccessProvider
;
Registry
.
as
<
IQuickAccessRegistry
>
(
Extensions
.
Quickaccess
).
registerQuickAccessProvider
({
ctor
:
ViewQuickAccessProvider
,
prefix
:
VIEW_QUICK_ACCESS_PREFIX
,
helpEntries
:
[{
description
:
localize
(
'
viewQuickAccess
'
,
"
Open View
"
),
needsEditor
:
false
}]
});
MenuRegistry
.
appendMenuItem
(
MenuId
.
CommandPalette
,
{
command
:
{
id
:
QUICK_ACCESS_COMMAND_ID
,
title
:
{
value
:
localize
(
'
openQuickAccess
'
,
"
Open Quick Access
"
),
original
:
'
Open Quick Access
'
},
category
:
localize
(
'
quickAccess
'
,
"
Quick Access
"
)
}
});
src/vs/workbench/contrib/quickaccess/browser/quickAccessCommands.ts
0 → 100644
浏览文件 @
66e66600
/*---------------------------------------------------------------------------------------------
* Copyright (c) Microsoft Corporation. All rights reserved.
* Licensed under the MIT License. See License.txt in the project root for license information.
*--------------------------------------------------------------------------------------------*/
import
{
IQuickInputService
}
from
'
vs/platform/quickinput/common/quickInput
'
;
import
{
CommandsRegistry
}
from
'
vs/platform/commands/common/commands
'
;
import
{
ServicesAccessor
}
from
'
vs/platform/instantiation/common/instantiation
'
;
export
const
QUICK_ACCESS_COMMAND_ID
=
'
workbench.action.openQuickAccess
'
;
CommandsRegistry
.
registerCommand
({
id
:
QUICK_ACCESS_COMMAND_ID
,
handler
:
async
function
(
accessor
:
ServicesAccessor
,
prefix
:
string
|
null
=
null
)
{
const
quickInputService
=
accessor
.
get
(
IQuickInputService
);
quickInputService
.
quickAccess
.
show
(
typeof
prefix
===
'
string
'
?
prefix
:
undefined
);
},
description
:
{
description
:
`Quick access`
,
args
:
[{
name
:
'
prefix
'
,
schema
:
{
'
type
'
:
'
string
'
}
}]
}
});
src/vs/workbench/test/browser/quickAccess.test.ts
浏览文件 @
66e66600
...
...
@@ -83,6 +83,7 @@ suite('QuickAccess', () => {
}
}
const
defaultProviderDescriptor
=
{
ctor
:
TestProvider1
,
prefix
:
''
,
helpEntries
:
[]
};
const
providerDescriptor1
=
{
ctor
:
TestProvider1
,
prefix
:
'
test
'
,
helpEntries
:
[]
};
const
providerDescriptor2
=
{
ctor
:
TestProvider2
,
prefix
:
'
test something
'
,
helpEntries
:
[]
};
const
providerDescriptor3
=
{
ctor
:
TestProvider3
,
prefix
:
'
default
'
,
helpEntries
:
[]
};
...
...
@@ -95,6 +96,8 @@ suite('QuickAccess', () => {
test
(
'
registry
'
,
()
=>
{
const
registry
=
(
Registry
.
as
<
IQuickAccessRegistry
>
(
Extensions
.
Quickaccess
));
registry
.
defaultProvider
=
defaultProviderDescriptor
;
const
initialSize
=
registry
.
getQuickAccessProviders
().
length
;
const
disposable
=
registry
.
registerQuickAccessProvider
(
providerDescriptor1
);
...
...
src/vs/workbench/test/browser/workbenchTestServices.ts
浏览文件 @
66e66600
...
...
@@ -102,12 +102,12 @@ import { ICodeEditor } from 'vs/editor/browser/editorBrowser';
import
{
IDiffEditor
}
from
'
vs/editor/common/editorCommon
'
;
import
{
IQuickInputService
}
from
'
vs/platform/quickinput/common/quickInput
'
;
import
{
QuickInputService
}
from
'
vs/workbench/services/quickinput/browser/quickInputService
'
;
import
{
IListService
}
from
'
vs/platform/list/browser/listService
'
;
export
import
TestTextResourcePropertiesService
=
CommonWorkbenchTestServices
.
TestTextResourcePropertiesService
;
export
import
TestContextService
=
CommonWorkbenchTestServices
.
TestContextService
;
export
import
TestStorageService
=
CommonWorkbenchTestServices
.
TestStorageService
;
export
import
TestWorkingCopyService
=
CommonWorkbenchTestServices
.
TestWorkingCopyService
;
import
{
IListService
}
from
'
vs/platform/list/browser/listService
'
;
export
function
createFileEditorInput
(
instantiationService
:
IInstantiationService
,
resource
:
URI
):
FileEditorInput
{
return
instantiationService
.
createInstance
(
FileEditorInput
,
resource
,
undefined
,
undefined
);
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录