未验证 提交 c6e0aaa3 编写于 作者: J Joao Moreno

views welcome: check for proposed api flag

上级 71cd1376
...@@ -7,9 +7,10 @@ import { Disposable, IDisposable } from 'vs/base/common/lifecycle'; ...@@ -7,9 +7,10 @@ import { Disposable, IDisposable } from 'vs/base/common/lifecycle';
import { ContextKeyExpr } from 'vs/platform/contextkey/common/contextkey'; import { ContextKeyExpr } from 'vs/platform/contextkey/common/contextkey';
import { IWorkbenchContribution } from 'vs/workbench/common/contributions'; import { IWorkbenchContribution } from 'vs/workbench/common/contributions';
import { IExtensionPoint } from 'vs/workbench/services/extensions/common/extensionsRegistry'; import { IExtensionPoint } from 'vs/workbench/services/extensions/common/extensionsRegistry';
import { ViewsWelcomeExtensionPoint, ViewWelcome } from './viewsWelcomeExtensionPoint'; import { ViewsWelcomeExtensionPoint, ViewWelcome, viewsWelcomeExtensionPointDescriptor } from './viewsWelcomeExtensionPoint';
import { Registry } from 'vs/platform/registry/common/platform'; import { Registry } from 'vs/platform/registry/common/platform';
import { Extensions as ViewContainerExtensions, IViewsRegistry } from 'vs/workbench/common/views'; import { Extensions as ViewContainerExtensions, IViewsRegistry } from 'vs/workbench/common/views';
import { localize } from 'vs/nls';
const viewsRegistry = Registry.as<IViewsRegistry>(ViewContainerExtensions.ViewsRegistry); const viewsRegistry = Registry.as<IViewsRegistry>(ViewContainerExtensions.ViewsRegistry);
...@@ -22,6 +23,11 @@ export class ViewsWelcomeContribution extends Disposable implements IWorkbenchCo ...@@ -22,6 +23,11 @@ export class ViewsWelcomeContribution extends Disposable implements IWorkbenchCo
extensionPoint.setHandler((_, { added, removed }) => { extensionPoint.setHandler((_, { added, removed }) => {
for (const contribution of removed) { for (const contribution of removed) {
// Proposed API check
if (!contribution.description.enableProposedApi) {
continue;
}
for (const welcome of contribution.value) { for (const welcome of contribution.value) {
const disposable = this.viewWelcomeContents.get(welcome); const disposable = this.viewWelcomeContents.get(welcome);
...@@ -32,6 +38,12 @@ export class ViewsWelcomeContribution extends Disposable implements IWorkbenchCo ...@@ -32,6 +38,12 @@ export class ViewsWelcomeContribution extends Disposable implements IWorkbenchCo
} }
for (const contribution of added) { for (const contribution of added) {
// Proposed API check
if (!contribution.description.enableProposedApi) {
contribution.collector.error(localize('proposedAPI.invalid', "The '{0}' contribution is a proposed API and is only available when running out of dev or with the following command line switch: --enable-proposed-api {1}", viewsWelcomeExtensionPointDescriptor.extensionPoint, contribution.description.identifier.value));
continue;
}
for (const welcome of contribution.value) { for (const welcome of contribution.value) {
const disposable = viewsRegistry.registerViewWelcomeContent(welcome.view, { const disposable = viewsRegistry.registerViewWelcomeContent(welcome.view, {
content: welcome.contents, content: welcome.contents,
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册