Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
xxadev
vscode
提交
25b36c1c
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,发现更多精彩内容 >>
未验证
提交
25b36c1c
编写于
2月 17, 2020
作者:
J
Joao Moreno
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
rename empty view contents to view welcome
上级
eab81b4a
变更
9
隐藏空白更改
内联
并排
Showing
9 changed file
with
220 addition
and
74 deletion
+220
-74
build/lib/i18n.resources.json
build/lib/i18n.resources.json
+0
-4
extensions/git/package.json
extensions/git/package.json
+27
-29
src/vs/workbench/contrib/codeActions/common/codeActions.contribution.ts
...ch/contrib/codeActions/common/codeActions.contribution.ts
+4
-0
src/vs/workbench/contrib/codeActions/common/documentationContribution.ts
...h/contrib/codeActions/common/documentationContribution.ts
+84
-0
src/vs/workbench/contrib/codeActions/common/documentationExtensionPoint.ts
...contrib/codeActions/common/documentationExtensionPoint.ts
+0
-35
src/vs/workbench/contrib/welcome/common/viewsWelcome.contribution.ts
...bench/contrib/welcome/common/viewsWelcome.contribution.ts
+4
-4
src/vs/workbench/contrib/welcome/common/viewsWelcomeContribution.ts
...kbench/contrib/welcome/common/viewsWelcomeContribution.ts
+46
-0
src/vs/workbench/contrib/welcome/common/viewsWelcomeExtensionPoint.ts
...ench/contrib/welcome/common/viewsWelcomeExtensionPoint.ts
+53
-0
src/vs/workbench/workbench.common.main.ts
src/vs/workbench/workbench.common.main.ts
+2
-2
未找到文件。
build/lib/i18n.resources.json
浏览文件 @
25b36c1c
...
...
@@ -62,10 +62,6 @@
"name"
:
"vs/workbench/contrib/debug"
,
"project"
:
"vscode-workbench"
},
{
"name"
:
"vs/workbench/contrib/documentation"
,
"project"
:
"vscode-workbench"
},
{
"name"
:
"vs/workbench/contrib/emmet"
,
"project"
:
"vscode-workbench"
...
...
extensions/git/package.json
浏览文件 @
25b36c1c
...
...
@@ -1762,35 +1762,33 @@
]
}
},
"documentation"
:
{
"view"
:
[
{
"view"
:
"workbench.scm"
,
"contents"
:
"%view.workbench.scm.disabled%"
,
"when"
:
"!config.git.enabled"
},
{
"view"
:
"workbench.scm"
,
"contents"
:
"%view.workbench.scm.missing%"
,
"when"
:
"config.git.enabled && git.missing"
},
{
"view"
:
"workbench.scm"
,
"contents"
:
"%view.workbench.scm.empty%"
,
"when"
:
"config.git.enabled && !git.missing && workbenchState == empty"
},
{
"view"
:
"workbench.scm"
,
"contents"
:
"%view.workbench.scm.folder%"
,
"when"
:
"config.git.enabled && !git.missing && workbenchState == folder"
},
{
"view"
:
"workbench.scm"
,
"contents"
:
"%view.workbench.scm.workspace%"
,
"when"
:
"config.git.enabled && !git.missing && workbenchState == workspace"
}
]
}
"viewsWelcome"
:
[
{
"view"
:
"workbench.scm"
,
"contents"
:
"%view.workbench.scm.disabled%"
,
"when"
:
"!config.git.enabled"
},
{
"view"
:
"workbench.scm"
,
"contents"
:
"%view.workbench.scm.missing%"
,
"when"
:
"config.git.enabled && git.missing"
},
{
"view"
:
"workbench.scm"
,
"contents"
:
"%view.workbench.scm.empty%"
,
"when"
:
"config.git.enabled && !git.missing && workbenchState == empty"
},
{
"view"
:
"workbench.scm"
,
"contents"
:
"%view.workbench.scm.folder%"
,
"when"
:
"config.git.enabled && !git.missing && workbenchState == folder"
},
{
"view"
:
"workbench.scm"
,
"contents"
:
"%view.workbench.scm.workspace%"
,
"when"
:
"config.git.enabled && !git.missing && workbenchState == workspace"
}
]
},
"dependencies"
:
{
"byline"
:
"^5.0.0"
,
...
...
src/vs/workbench/contrib/codeActions/common/codeActions.contribution.ts
浏览文件 @
25b36c1c
...
...
@@ -10,9 +10,12 @@ import { Registry } from 'vs/platform/registry/common/platform';
import
{
Extensions
as
WorkbenchExtensions
,
IWorkbenchContributionsRegistry
}
from
'
vs/workbench/common/contributions
'
;
import
{
CodeActionsContribution
,
editorConfiguration
}
from
'
vs/workbench/contrib/codeActions/common/codeActionsContribution
'
;
import
{
CodeActionsExtensionPoint
,
codeActionsExtensionPointDescriptor
}
from
'
vs/workbench/contrib/codeActions/common/codeActionsExtensionPoint
'
;
import
{
CodeActionDocumentationContribution
}
from
'
vs/workbench/contrib/codeActions/common/documentationContribution
'
;
import
{
DocumentationExtensionPoint
,
documentationExtensionPointDescriptor
}
from
'
vs/workbench/contrib/codeActions/common/documentationExtensionPoint
'
;
import
{
ExtensionsRegistry
}
from
'
vs/workbench/services/extensions/common/extensionsRegistry
'
;
const
codeActionsExtensionPoint
=
ExtensionsRegistry
.
registerExtensionPoint
<
CodeActionsExtensionPoint
[]
>
(
codeActionsExtensionPointDescriptor
);
const
documentationExtensionPoint
=
ExtensionsRegistry
.
registerExtensionPoint
<
DocumentationExtensionPoint
>
(
documentationExtensionPointDescriptor
);
Registry
.
as
<
IConfigurationRegistry
>
(
Extensions
.
Configuration
)
.
registerConfiguration
(
editorConfiguration
);
...
...
@@ -22,6 +25,7 @@ class WorkbenchConfigurationContribution {
@
IInstantiationService
instantiationService
:
IInstantiationService
,
)
{
instantiationService
.
createInstance
(
CodeActionsContribution
,
codeActionsExtensionPoint
);
instantiationService
.
createInstance
(
CodeActionDocumentationContribution
,
documentationExtensionPoint
);
}
}
...
...
src/vs/workbench/contrib/
documentation
/common/documentationContribution.ts
→
src/vs/workbench/contrib/
codeActions
/common/documentationContribution.ts
浏览文件 @
25b36c1c
...
...
@@ -4,7 +4,7 @@
*--------------------------------------------------------------------------------------------*/
import
{
CancellationToken
}
from
'
vs/base/common/cancellation
'
;
import
{
Disposable
,
IDisposable
}
from
'
vs/base/common/lifecycle
'
;
import
{
Disposable
}
from
'
vs/base/common/lifecycle
'
;
import
{
Range
}
from
'
vs/editor/common/core/range
'
;
import
{
Selection
}
from
'
vs/editor/common/core/selection
'
;
import
{
ITextModel
}
from
'
vs/editor/common/model
'
;
...
...
@@ -13,24 +13,21 @@ import { CodeActionKind } from 'vs/editor/contrib/codeAction/types';
import
{
ContextKeyExpr
,
IContextKeyService
}
from
'
vs/platform/contextkey/common/contextkey
'
;
import
{
IWorkbenchContribution
}
from
'
vs/workbench/common/contributions
'
;
import
{
IExtensionPoint
}
from
'
vs/workbench/services/extensions/common/extensionsRegistry
'
;
import
{
DocumentationExtensionPoint
,
ViewDocumentationExtensionPoint
}
from
'
./documentationExtensionPoint
'
;
import
{
Registry
}
from
'
vs/platform/registry/common/platform
'
;
import
{
Extensions
as
ViewContainerExtensions
,
IViewsRegistry
}
from
'
vs/workbench/common/views
'
;
import
{
DocumentationExtensionPoint
}
from
'
./documentationExtensionPoint
'
;
interface
ICodeActionContribution
{
title
:
string
;
when
:
ContextKeyExpr
;
command
:
string
;
}
const
viewsRegistry
=
Registry
.
as
<
IViewsRegistry
>
(
ViewContainerExtensions
.
ViewsRegistry
);
export
class
DocumentationContribution
extends
Disposable
implements
IWorkbenchContribution
,
modes
.
CodeActionProvider
{
export
class
CodeAction
DocumentationContribution
extends
Disposable
implements
IWorkbenchContribution
,
modes
.
CodeActionProvider
{
private
codeActionContributions
:
ICodeActionContribution
[]
=
[];
private
readonly
emptyCodeActionsList
=
{
actions
:
[],
dispose
:
()
=>
{
}
};
private
contributions
:
{
title
:
string
;
when
:
ContextKeyExpr
;
command
:
string
;
}[]
=
[];
private
emptyViewContents
=
new
Map
<
ViewDocumentationExtensionPoint
,
IDisposable
>
();
private
readonly
emptyCodeActionsList
=
{
actions
:
[],
dispose
:
()
=>
{
}
};
constructor
(
extensionPoint
:
IExtensionPoint
<
DocumentationExtensionPoint
>
,
...
...
@@ -40,46 +37,25 @@ export class DocumentationContribution extends Disposable implements IWorkbenchC
this
.
_register
(
modes
.
CodeActionProviderRegistry
.
register
(
'
*
'
,
this
));
extensionPoint
.
setHandler
((
points
,
{
added
,
removed
})
=>
{
extensionPoint
.
setHandler
(
points
=>
{
this
.
contributions
=
[];
for
(
const
documentation
of
points
)
{
if
(
documentation
.
value
.
refactoring
)
{
for
(
const
contribution
of
documentation
.
value
.
refactoring
)
{
const
precondition
=
ContextKeyExpr
.
deserialize
(
contribution
.
when
);
if
(
!
precondition
)
{
continue
;
}
this
.
codeActionContributions
.
push
({
title
:
contribution
.
title
,
when
:
precondition
,
command
:
contribution
.
command
});
}
if
(
!
documentation
.
value
.
refactoring
)
{
continue
;
}
}
for
(
const
documentation
of
removed
)
{
if
(
documentation
.
value
.
view
)
{
for
(
const
contribution
of
documentation
.
value
.
view
)
{
const
disposable
=
this
.
emptyViewContents
.
get
(
contribution
);
if
(
disposable
)
{
disposable
.
dispose
();
}
for
(
const
contribution
of
documentation
.
value
.
refactoring
)
{
const
precondition
=
ContextKeyExpr
.
deserialize
(
contribution
.
when
);
if
(
!
precondition
)
{
continue
;
}
}
}
for
(
const
documentation
of
added
)
{
if
(
documentation
.
value
.
view
)
{
for
(
const
contribution
of
documentation
.
value
.
view
)
{
const
disposable
=
viewsRegistry
.
registerEmptyViewContent
(
contribution
.
view
,
{
content
:
contribution
.
contents
,
when
:
ContextKeyExpr
.
deserialize
(
contribution
.
when
)
});
this
.
contributions
.
push
({
title
:
contribution
.
title
,
when
:
precondition
,
command
:
contribution
.
command
});
this
.
emptyViewContents
.
set
(
contribution
,
disposable
);
}
}
}
});
...
...
@@ -96,7 +72,7 @@ export class DocumentationContribution extends Disposable implements IWorkbenchC
}
}
return
this
.
co
deActionCo
ntributions
return
this
.
contributions
.
filter
(
contribution
=>
this
.
contextKeyService
.
contextMatchesRules
(
contribution
.
when
))
.
map
(
contribution
=>
{
return
{
...
...
src/vs/workbench/contrib/
documentation
/common/documentationExtensionPoint.ts
→
src/vs/workbench/contrib/
codeActions
/common/documentationExtensionPoint.ts
浏览文件 @
25b36c1c
...
...
@@ -11,8 +11,6 @@ export enum DocumentationExtensionPointFields {
when
=
'
when
'
,
title
=
'
title
'
,
command
=
'
command
'
,
view
=
'
view
'
,
contents
=
'
contents
'
,
}
export
interface
RefactoringDocumentationExtensionPoint
{
...
...
@@ -21,15 +19,8 @@ export interface RefactoringDocumentationExtensionPoint {
readonly
[
DocumentationExtensionPointFields
.
command
]:
string
;
}
export
interface
ViewDocumentationExtensionPoint
{
readonly
[
DocumentationExtensionPointFields
.
view
]:
string
;
readonly
[
DocumentationExtensionPointFields
.
contents
]:
string
;
readonly
[
DocumentationExtensionPointFields
.
when
]:
string
;
}
export
interface
DocumentationExtensionPoint
{
readonly
refactoring
?:
readonly
RefactoringDocumentationExtensionPoint
[];
readonly
view
?:
readonly
ViewDocumentationExtensionPoint
[];
}
const
documentationExtensionPointSchema
=
Object
.
freeze
<
IConfigurationPropertySchema
>
({
...
...
@@ -62,32 +53,6 @@ const documentationExtensionPointSchema = Object.freeze<IConfigurationPropertySc
},
},
}
},
'
view
'
:
{
type
:
'
array
'
,
description
:
nls
.
localize
(
'
contributes.documentation.views
'
,
"
Contributed documentation for views.
"
),
items
:
{
type
:
'
object
'
,
description
:
nls
.
localize
(
'
contributes.documentation.view
'
,
"
Contributed documentation for a view.
"
),
required
:
[
DocumentationExtensionPointFields
.
view
,
DocumentationExtensionPointFields
.
contents
],
properties
:
{
[
DocumentationExtensionPointFields
.
view
]:
{
type
:
'
string
'
,
description
:
nls
.
localize
(
'
contributes.documentation.view.view
'
,
"
View identifier for this documentation.
"
),
},
[
DocumentationExtensionPointFields
.
contents
]:
{
type
:
'
string
'
,
description
:
nls
.
localize
(
'
contributes.documentation.view.contents
'
,
"
Documentation contents.
"
),
},
[
DocumentationExtensionPointFields
.
when
]:
{
type
:
'
string
'
,
description
:
nls
.
localize
(
'
contributes.documentation.view.when
'
,
"
When clause.
"
),
},
},
}
}
}
});
...
...
src/vs/workbench/contrib/
documentation/common/documentation
.contribution.ts
→
src/vs/workbench/contrib/
welcome/common/viewsWelcome
.contribution.ts
浏览文件 @
25b36c1c
...
...
@@ -7,17 +7,17 @@ import { IInstantiationService } from 'vs/platform/instantiation/common/instanti
import
{
LifecyclePhase
}
from
'
vs/platform/lifecycle/common/lifecycle
'
;
import
{
Registry
}
from
'
vs/platform/registry/common/platform
'
;
import
{
Extensions
as
WorkbenchExtensions
,
IWorkbenchContributionsRegistry
}
from
'
vs/workbench/common/contributions
'
;
import
{
DocumentationContribution
}
from
'
vs/workbench/contrib/documentation/common/documentation
Contribution
'
;
import
{
DocumentationExtensionPoint
,
documentationExtensionPointDescriptor
}
from
'
vs/workbench/contrib/documentation/common/documentation
ExtensionPoint
'
;
import
{
ViewsWelcomeContribution
}
from
'
vs/workbench/contrib/welcome/common/viewsWelcome
Contribution
'
;
import
{
ViewsWelcomeExtensionPoint
,
viewsWelcomeExtensionPointDescriptor
}
from
'
vs/workbench/contrib/welcome/common/viewsWelcome
ExtensionPoint
'
;
import
{
ExtensionsRegistry
}
from
'
vs/workbench/services/extensions/common/extensionsRegistry
'
;
const
documentationExtensionPoint
=
ExtensionsRegistry
.
registerExtensionPoint
<
DocumentationExtensionPoint
>
(
documentation
ExtensionPointDescriptor
);
const
extensionPoint
=
ExtensionsRegistry
.
registerExtensionPoint
<
ViewsWelcomeExtensionPoint
>
(
viewsWelcome
ExtensionPointDescriptor
);
class
WorkbenchConfigurationContribution
{
constructor
(
@
IInstantiationService
instantiationService
:
IInstantiationService
,
)
{
instantiationService
.
createInstance
(
DocumentationContribution
,
documentationE
xtensionPoint
);
instantiationService
.
createInstance
(
ViewsWelcomeContribution
,
e
xtensionPoint
);
}
}
...
...
src/vs/workbench/contrib/welcome/common/viewsWelcomeContribution.ts
0 → 100644
浏览文件 @
25b36c1c
/*---------------------------------------------------------------------------------------------
* Copyright (c) Microsoft Corporation. All rights reserved.
* Licensed under the MIT License. See License.txt in the project root for license information.
*--------------------------------------------------------------------------------------------*/
import
{
Disposable
,
IDisposable
}
from
'
vs/base/common/lifecycle
'
;
import
{
ContextKeyExpr
}
from
'
vs/platform/contextkey/common/contextkey
'
;
import
{
IWorkbenchContribution
}
from
'
vs/workbench/common/contributions
'
;
import
{
IExtensionPoint
}
from
'
vs/workbench/services/extensions/common/extensionsRegistry
'
;
import
{
ViewsWelcomeExtensionPoint
,
ViewWelcome
}
from
'
./viewsWelcomeExtensionPoint
'
;
import
{
Registry
}
from
'
vs/platform/registry/common/platform
'
;
import
{
Extensions
as
ViewContainerExtensions
,
IViewsRegistry
}
from
'
vs/workbench/common/views
'
;
const
viewsRegistry
=
Registry
.
as
<
IViewsRegistry
>
(
ViewContainerExtensions
.
ViewsRegistry
);
export
class
ViewsWelcomeContribution
extends
Disposable
implements
IWorkbenchContribution
{
private
viewWelcomeContents
=
new
Map
<
ViewWelcome
,
IDisposable
>
();
constructor
(
extensionPoint
:
IExtensionPoint
<
ViewsWelcomeExtensionPoint
>
)
{
super
();
extensionPoint
.
setHandler
((
_
,
{
added
,
removed
})
=>
{
for
(
const
contribution
of
removed
)
{
for
(
const
welcome
of
contribution
.
value
)
{
const
disposable
=
this
.
viewWelcomeContents
.
get
(
welcome
);
if
(
disposable
)
{
disposable
.
dispose
();
}
}
}
for
(
const
contribution
of
added
)
{
for
(
const
welcome
of
contribution
.
value
)
{
const
disposable
=
viewsRegistry
.
registerEmptyViewContent
(
welcome
.
view
,
{
content
:
welcome
.
contents
,
when
:
ContextKeyExpr
.
deserialize
(
welcome
.
when
)
});
this
.
viewWelcomeContents
.
set
(
welcome
,
disposable
);
}
}
});
}
}
src/vs/workbench/contrib/welcome/common/viewsWelcomeExtensionPoint.ts
0 → 100644
浏览文件 @
25b36c1c
/*---------------------------------------------------------------------------------------------
* Copyright (c) Microsoft Corporation. All rights reserved.
* Licensed under the MIT License. See License.txt in the project root for license information.
*--------------------------------------------------------------------------------------------*/
import
*
as
nls
from
'
vs/nls
'
;
import
{
IConfigurationPropertySchema
}
from
'
vs/platform/configuration/common/configurationRegistry
'
;
export
enum
ViewsWelcomeExtensionPointFields
{
view
=
'
view
'
,
contents
=
'
contents
'
,
when
=
'
when
'
,
}
export
interface
ViewWelcome
{
readonly
[
ViewsWelcomeExtensionPointFields
.
view
]:
string
;
readonly
[
ViewsWelcomeExtensionPointFields
.
contents
]:
string
;
readonly
[
ViewsWelcomeExtensionPointFields
.
when
]:
string
;
}
export
type
ViewsWelcomeExtensionPoint
=
ViewWelcome
[];
const
viewsWelcomeExtensionPointSchema
=
Object
.
freeze
<
IConfigurationPropertySchema
>
({
type
:
'
array
'
,
description
:
nls
.
localize
(
'
contributes.viewsWelcome
'
,
"
Contributed views welcome content.
"
),
items
:
{
type
:
'
object
'
,
description
:
nls
.
localize
(
'
contributes.viewsWelcome.view
'
,
"
Contributed welcome content for a specific view.
"
),
required
:
[
ViewsWelcomeExtensionPointFields
.
view
,
ViewsWelcomeExtensionPointFields
.
contents
],
properties
:
{
[
ViewsWelcomeExtensionPointFields
.
view
]:
{
type
:
'
string
'
,
description
:
nls
.
localize
(
'
contributes.viewsWelcome.view.view
'
,
"
View identifier for this welcome content.
"
),
},
[
ViewsWelcomeExtensionPointFields
.
contents
]:
{
type
:
'
string
'
,
description
:
nls
.
localize
(
'
contributes.viewsWelcome.view.contents
'
,
"
Welcome content.
"
),
},
[
ViewsWelcomeExtensionPointFields
.
when
]:
{
type
:
'
string
'
,
description
:
nls
.
localize
(
'
contributes.viewsWelcome.view.when
'
,
"
When clause for this welcome content.
"
),
},
}
}
});
export
const
viewsWelcomeExtensionPointDescriptor
=
{
extensionPoint
:
'
viewsWelcome
'
,
jsonSchema
:
viewsWelcomeExtensionPointSchema
};
src/vs/workbench/workbench.common.main.ts
浏览文件 @
25b36c1c
...
...
@@ -272,8 +272,8 @@ import 'vs/workbench/contrib/userDataSync/browser/userDataSync.contribution';
// Code Actions
import
'
vs/workbench/contrib/codeActions/common/codeActions.contribution
'
;
//
Documentation
import
'
vs/workbench/contrib/
documentation/common/documentation
.contribution
'
;
//
Welcome
import
'
vs/workbench/contrib/
welcome/common/viewsWelcome
.contribution
'
;
// Timeline
import
'
vs/workbench/contrib/timeline/browser/timeline.contribution
'
;
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录