提交 3eb33255 编写于 作者: S Sandeep Somavarapu

#59861 Remove TPromise in Extensions

上级 90171dab
......@@ -3,7 +3,6 @@
* Licensed under the MIT License. See License.txt in the project root for license information.
*--------------------------------------------------------------------------------------------*/
import { TPromise } from 'vs/base/common/winjs.base';
import { IAction, IActionRunner, ActionRunner } from 'vs/base/common/actions';
import { IActionItem } from 'vs/base/browser/ui/actionbar/actionbar';
import { Component } from 'vs/workbench/common/component';
......@@ -89,7 +88,7 @@ export abstract class Composite extends Component implements IComposite {
* Note that DOM-dependent calculations should be performed from the setVisible()
* call. Only then the composite will be part of the DOM.
*/
create(parent: HTMLElement): TPromise<void> {
create(parent: HTMLElement): Promise<void> {
this.parent = parent;
return Promise.resolve(null);
......@@ -118,7 +117,7 @@ export abstract class Composite extends Component implements IComposite {
* to do a long running operation from this call. Typically this operation should be
* fast though because setVisible might be called many times during a session.
*/
setVisible(visible: boolean): TPromise<void> {
setVisible(visible: boolean): Promise<void> {
this.visible = visible;
return Promise.resolve(null);
......
......@@ -208,7 +208,7 @@ export class PanelViewlet extends Viewlet {
super(id, configurationService, partService, telemetryService, themeService);
}
create(parent: HTMLElement): TPromise<void> {
create(parent: HTMLElement): Promise<void> {
return super.create(parent).then(() => {
this.panelview = this._register(new PanelView(parent, this.options));
this._register(this.panelview.onDidDrop(({ from, to }) => this.movePanel(from as ViewletPanel, to as ViewletPanel)));
......
......@@ -144,7 +144,7 @@ export abstract class ViewContainerViewlet extends PanelViewlet implements IView
this._register(toDisposable(() => this.viewDisposables = dispose(this.viewDisposables)));
}
create(parent: HTMLElement): TPromise<void> {
create(parent: HTMLElement): Promise<void> {
return super.create(parent).then(() => {
this._register(this.onDidSashChange(() => this.saveViewSizes()));
this.viewsModel.onDidAdd(added => this.onDidAddViews(added));
......@@ -191,7 +191,7 @@ export abstract class ViewContainerViewlet extends PanelViewlet implements IView
return result;
}
setVisible(visible: boolean): TPromise<void> {
setVisible(visible: boolean): Promise<void> {
return super.setVisible(visible)
.then(() => Promise.all(this.panels.filter(view => view.isVisible() !== visible)
.map((view) => view.setVisible(visible))))
......
......@@ -7,7 +7,6 @@ import 'vs/css!./media/debugViewlet';
import * as nls from 'vs/nls';
import { IAction } from 'vs/base/common/actions';
import * as DOM from 'vs/base/browser/dom';
import { TPromise } from 'vs/base/common/winjs.base';
import { IActionItem } from 'vs/base/browser/ui/actionbar/actionbar';
import { ViewContainerViewlet } from 'vs/workbench/browser/parts/views/viewsViewlet';
import { IDebugService, VIEWLET_ID, State, BREAKPOINTS_VIEW_ID, IDebugConfiguration } from 'vs/workbench/parts/debug/common/debug';
......@@ -65,7 +64,7 @@ export class DebugViewlet extends ViewContainerViewlet {
}));
}
create(parent: HTMLElement): TPromise<void> {
create(parent: HTMLElement): Promise<void> {
return super.create(parent).then(() => {
DOM.addClass(parent, 'debug-viewlet');
});
......
......@@ -132,8 +132,8 @@ export class Repl extends Panel implements IPrivateReplService, IHistoryNavigati
}
}
public create(parent: HTMLElement): TPromise<void> {
super.create(parent);
public async create(parent: HTMLElement): Promise<void> {
await super.create(parent);
this.container = dom.append(parent, $('.repl'));
this.treeContainer = dom.append(this.container, $('.repl-tree'));
this.createReplInput(this.container);
......@@ -149,10 +149,10 @@ export class Repl extends Panel implements IPrivateReplService, IHistoryNavigati
controller
}, replTreeOptions);
return this.tree.setInput(this.debugService.getModel());
await this.tree.setInput(this.debugService.getModel());
}
public setVisible(visible: boolean): TPromise<void> {
public setVisible(visible: boolean): Promise<void> {
if (!visible) {
dispose(this.model);
} else {
......
......@@ -4,7 +4,6 @@
*--------------------------------------------------------------------------------------------*/
import * as nls from 'vs/nls';
import { TPromise } from 'vs/base/common/winjs.base';
import { IAutoFocus, Mode, IModel } from 'vs/base/parts/quickopen/common/quickOpen';
import { QuickOpenEntry, QuickOpenModel } from 'vs/base/parts/quickopen/browser/quickOpenModel';
import { QuickOpenHandler } from 'vs/workbench/browser/quickopen';
......@@ -47,7 +46,7 @@ export class ExtensionsHandler extends QuickOpenHandler {
super();
}
getResults(text: string, token: CancellationToken): TPromise<IModel<any>> {
getResults(text: string, token: CancellationToken): Promise<IModel<any>> {
const label = nls.localize('manage', "Press Enter to manage your extensions.");
const action = () => {
this.viewletService.openViewlet(VIEWLET_ID, true)
......@@ -58,7 +57,7 @@ export class ExtensionsHandler extends QuickOpenHandler {
});
};
return TPromise.as(new QuickOpenModel([new SimpleEntry(label, action)]));
return Promise.resolve(new QuickOpenModel([new SimpleEntry(label, action)]));
}
getEmptyLabel(input: string): string {
......@@ -83,7 +82,7 @@ export class GalleryExtensionsHandler extends QuickOpenHandler {
super();
}
getResults(text: string, token: CancellationToken): TPromise<IModel<any>> {
getResults(text: string, token: CancellationToken): Promise<IModel<any>> {
if (/\./.test(text)) {
return this.galleryService.query({ names: [text], pageSize: 1 })
.then(galleryResult => {
......@@ -127,7 +126,7 @@ export class GalleryExtensionsHandler extends QuickOpenHandler {
entries.push(new SimpleEntry(label, action));
}
return TPromise.as(new QuickOpenModel(entries));
return Promise.resolve(new QuickOpenModel(entries));
}
getEmptyLabel(input: string): string {
......
......@@ -7,7 +7,6 @@ import * as dom from 'vs/base/browser/dom';
import { localize } from 'vs/nls';
import { IMouseEvent } from 'vs/base/browser/mouseEvent';
import { IDisposable, dispose } from 'vs/base/common/lifecycle';
import { TPromise, Promise } from 'vs/base/common/winjs.base';
import { IDataSource, ITree, IRenderer } from 'vs/base/parts/tree/browser/tree';
import { Action } from 'vs/base/common/actions';
import { IExtensionsWorkbenchService, IExtension } from 'vs/workbench/parts/extensions/common/extensions';
......@@ -50,12 +49,12 @@ export class DataSource implements IDataSource {
return hasChildren;
}
public getChildren(tree: ITree, extensionData: IExtensionData): Promise {
public getChildren(tree: ITree, extensionData: IExtensionData): Promise<any> {
return extensionData.getChildren();
}
public getParent(tree: ITree, { parent }: IExtensionData): Promise {
return TPromise.as(parent);
public getParent(tree: ITree, { parent }: IExtensionData): Promise<any> {
return Promise.resolve(parent);
}
}
......@@ -214,7 +213,7 @@ class OpenExtensionAction extends Action {
return this._extensionData;
}
run(sideByside: boolean): TPromise<any> {
run(sideByside: boolean): Promise<any> {
return this.extensionsWorkdbenchService.open(this.extensionData.extension, sideByside);
}
}
......
......@@ -4,7 +4,6 @@
*--------------------------------------------------------------------------------------------*/
import { localize } from 'vs/nls';
import { TPromise } from 'vs/base/common/winjs.base';
import { EditorInput } from 'vs/workbench/common/editor';
import { IExtension } from 'vs/workbench/parts/extensions/common/extensions';
import { URI } from 'vs/base/common/uri';
......@@ -39,8 +38,8 @@ export class ExtensionsInput extends EditorInput {
return this.extension === otherExtensionInput.extension;
}
resolve(): TPromise<any> {
return TPromise.as(null);
resolve(): Promise<any> {
return Promise.resolve(null);
}
supportsSplitEditor(): boolean {
......
......@@ -7,7 +7,6 @@ import * as arrays from 'vs/base/common/arrays';
import { localize } from 'vs/nls';
import { Event, chain, anyEvent, debounceEvent } from 'vs/base/common/event';
import { onUnexpectedError } from 'vs/base/common/errors';
import { TPromise } from 'vs/base/common/winjs.base';
import { IDisposable, dispose } from 'vs/base/common/lifecycle';
import { ITelemetryService } from 'vs/platform/telemetry/common/telemetry';
import { IExtensionManagementService, ILocalExtension, IExtensionEnablementService, IExtensionTipsService, IExtensionIdentifier, EnablementState, InstallOperation } from 'vs/platform/extensionManagement/common/extensionManagement';
......@@ -39,13 +38,13 @@ export class KeymapExtensions implements IWorkbenchContribution {
this.disposables.push(
lifecycleService.onShutdown(() => this.dispose()),
instantiationService.invokeFunction(onExtensionChanged)((identifiers => {
TPromise.join(identifiers.map(identifier => this.checkForOtherKeymaps(identifier)))
Promise.all(identifiers.map(identifier => this.checkForOtherKeymaps(identifier)))
.then(null, onUnexpectedError);
}))
);
}
private checkForOtherKeymaps(extensionIdentifier: IExtensionIdentifier): TPromise<void> {
private checkForOtherKeymaps(extensionIdentifier: IExtensionIdentifier): Promise<void> {
return this.instantiationService.invokeFunction(getInstalledExtensions).then(extensions => {
const keymaps = extensions.filter(extension => isKeymapExtension(this.tipsService, extension));
const extension = arrays.first(keymaps, extension => stripVersion(extension.identifier.id) === extensionIdentifier.id);
......@@ -75,7 +74,7 @@ export class KeymapExtensions implements IWorkbenchContribution {
*/
this.telemetryService.publicLog('disableOtherKeymaps', telemetryData);
if (confirmed) {
TPromise.join(oldKeymaps.map(keymap => {
Promise.all(oldKeymaps.map(keymap => {
return this.extensionEnablementService.setEnablement(keymap.local, EnablementState.Disabled);
}));
}
......@@ -118,7 +117,7 @@ export function onExtensionChanged(accessor: ServicesAccessor): Event<IExtension
});
}
export function getInstalledExtensions(accessor: ServicesAccessor): TPromise<IExtensionStatus[]> {
export function getInstalledExtensions(accessor: ServicesAccessor): Promise<IExtensionStatus[]> {
const extensionService = accessor.get(IExtensionManagementService);
const extensionEnablementService = accessor.get(IExtensionEnablementService);
return extensionService.getInstalled().then(extensions => {
......
......@@ -6,7 +6,6 @@
import 'vs/css!./media/extensionsViewlet';
import { localize } from 'vs/nls';
import { ThrottledDelayer, always, timeout } from 'vs/base/common/async';
import { TPromise } from 'vs/base/common/winjs.base';
import { isPromiseCanceledError, create as createError } from 'vs/base/common/errors';
import { IWorkbenchContribution } from 'vs/workbench/common/contributions';
import { IDisposable, dispose } from 'vs/base/common/lifecycle';
......@@ -325,7 +324,7 @@ export class ExtensionsViewlet extends ViewContainerViewlet implements IExtensio
}, this, this.disposables);
}
create(parent: HTMLElement): TPromise<void> {
create(parent: HTMLElement): Promise<void> {
addClass(parent, 'extensions-viewlet');
this.root = parent;
......@@ -361,7 +360,7 @@ export class ExtensionsViewlet extends ViewContainerViewlet implements IExtensio
return super.create(this.extensionsBox);
}
setVisible(visible: boolean): TPromise<void> {
setVisible(visible: boolean): Promise<void> {
const isVisibilityChanged = this.isVisible() !== visible;
return super.setVisible(visible).then(() => {
if (isVisibilityChanged) {
......@@ -444,7 +443,7 @@ export class ExtensionsViewlet extends ViewContainerViewlet implements IExtensio
return this.searchBox.getValue().replace(/@category/g, 'category').replace(/@tag:/g, 'tag:').replace(/@ext:/g, 'ext:');
}
private doSearch(): TPromise<any> {
private doSearch(): Promise<any> {
const value = this.normalizedQuery();
this.searchExtensionsContextKey.set(!!value);
this.searchBuiltInExtensionsContextKey.set(ExtensionsListView.isBuiltInExtensionsQuery(value));
......@@ -453,18 +452,18 @@ export class ExtensionsViewlet extends ViewContainerViewlet implements IExtensio
this.nonEmptyWorkspaceContextKey.set(this.contextService.getWorkbenchState() !== WorkbenchState.EMPTY);
if (value) {
return this.progress(TPromise.join(this.panels.map(view => {
return this.progress(Promise.all(this.panels.map(view => {
(<ExtensionsListView>view).show(this.normalizedQuery()).then(model => {
this.alertSearchResult(model.length, view.id);
});
})));
}
return TPromise.as(null);
return Promise.resolve(null);
}
protected onDidAddViews(added: IAddedViewDescriptorRef[]): ViewletPanel[] {
const addedViews = super.onDidAddViews(added);
this.progress(TPromise.join(addedViews.map(addedView => {
this.progress(Promise.all(addedViews.map(addedView => {
(<ExtensionsListView>addedView).show(this.normalizedQuery()).then(model => {
this.alertSearchResult(model.length, addedView.id);
});
......@@ -527,14 +526,14 @@ export class ExtensionsViewlet extends ViewContainerViewlet implements IExtensio
const editors = group.editors.filter(input => input instanceof ExtensionsInput);
const promises = editors.map(editor => group.closeEditor(editor));
return TPromise.join(promises);
return Promise.all(promises);
});
TPromise.join(promises);
Promise.all(promises);
}
}
private progress<T>(promise: TPromise<T>): TPromise<T> {
private progress<T>(promise: Promise<T>): Promise<T> {
const progressRunner = this.progressService.show(true);
return always(promise, () => progressRunner.done());
}
......@@ -619,7 +618,7 @@ export class MaliciousExtensionChecker implements IWorkbenchContribution {
.then(() => this.loopCheckForMaliciousExtensions());
}
private checkForMaliciousExtensions(): TPromise<any> {
private checkForMaliciousExtensions(): Promise<any> {
return this.extensionsManagementService.getExtensionsReport().then(report => {
const maliciousSet = getMaliciousExtensionsSet(report);
......@@ -628,7 +627,7 @@ export class MaliciousExtensionChecker implements IWorkbenchContribution {
.filter(e => maliciousSet.has(getGalleryExtensionIdFromLocal(e)));
if (maliciousExtensions.length) {
return TPromise.join(maliciousExtensions.map(e => this.extensionsManagementService.uninstall(e, true).then(() => {
return Promise.all(maliciousExtensions.map(e => this.extensionsManagementService.uninstall(e, true).then(() => {
this.notificationService.prompt(
Severity.Warning,
localize('malicious warning', "We have uninstalled '{0}' which was reported to be problematic.", getGalleryExtensionIdFromLocal(e)),
......@@ -639,7 +638,7 @@ export class MaliciousExtensionChecker implements IWorkbenchContribution {
);
})));
} else {
return TPromise.as(null);
return Promise.resolve(null);
}
});
}, err => this.logService.error(err));
......
......@@ -4,7 +4,6 @@
*--------------------------------------------------------------------------------------------*/
import { localize } from 'vs/nls';
import { TPromise } from 'vs/base/common/winjs.base';
import { dispose } from 'vs/base/common/lifecycle';
import { assign } from 'vs/base/common/objects';
import { chain } from 'vs/base/common/event';
......@@ -172,10 +171,10 @@ export class ExtensionsListView extends ViewletPanel {
return this.list.length;
}
protected showEmptyModel(): TPromise<IPagedModel<IExtension>> {
protected showEmptyModel(): Promise<IPagedModel<IExtension>> {
const emptyModel = new PagedModel([]);
this.setModel(emptyModel);
return TPromise.as(emptyModel);
return Promise.resolve(emptyModel);
}
private onContextMenu(e: IListContextMenuEvent<IExtension>): void {
......@@ -185,7 +184,7 @@ export class ExtensionsListView extends ViewletPanel {
if (manageExtensionAction.enabled) {
this.contextMenuService.showContextMenu({
getAnchor: () => e.anchor,
getActions: () => TPromise.as(manageExtensionAction.actionItem.getActions())
getActions: () => Promise.resolve(manageExtensionAction.actionItem.getActions())
});
}
}
......@@ -422,7 +421,7 @@ export class ExtensionsListView extends ViewletPanel {
return extensions;
}
private getAllRecommendationsModel(query: Query, options: IQueryOptions): TPromise<IPagedModel<IExtension>> {
private getAllRecommendationsModel(query: Query, options: IQueryOptions): Promise<IPagedModel<IExtension>> {
const value = query.value.replace(/@recommended:all/g, '').replace(/@recommended/g, '').trim().toLowerCase();
return this.extensionsWorkbenchService.queryLocal()
......@@ -432,7 +431,7 @@ export class ExtensionsListView extends ViewletPanel {
const othersPromise = this.tipsService.getOtherRecommendations();
const workspacePromise = this.tipsService.getWorkspaceRecommendations();
return TPromise.join([othersPromise, workspacePromise])
return Promise.all([othersPromise, workspacePromise])
.then(([others, workspaceRecommendations]) => {
const names = this.getTrimmedRecommendations(local, value, fileBasedRecommendations, others, workspaceRecommendations);
const recommendationsWithReason = this.tipsService.getAllRecommendationsWithReason();
......@@ -452,7 +451,7 @@ export class ExtensionsListView extends ViewletPanel {
})
});
if (!names.length) {
return TPromise.as(new PagedModel([]));
return Promise.resolve(new PagedModel([]));
}
options.source = 'recommendations-all';
return this.extensionsWorkbenchService.queryGallery(assign(options, { names, pageSize: names.length }))
......@@ -464,22 +463,19 @@ export class ExtensionsListView extends ViewletPanel {
});
}
private getCuratedModel(query: Query, options: IQueryOptions): TPromise<IPagedModel<IExtension>> {
private async getCuratedModel(query: Query, options: IQueryOptions): Promise<IPagedModel<IExtension>> {
const value = query.value.replace(/curated:/g, '').trim();
return this.experimentService.getCuratedExtensionsList(value).then(names => {
if (Array.isArray(names) && names.length) {
options.source = `curated:${value}`;
return this.extensionsWorkbenchService.queryGallery(assign(options, { names, pageSize: names.length }))
.then(pager => {
this.sortFirstPage(pager, names);
return new PagedModel(pager || []);
});
}
return TPromise.as(new PagedModel([]));
});
const names = await this.experimentService.getCuratedExtensionsList(value);
if (Array.isArray(names) && names.length) {
options.source = `curated:${value}`;
const pager = await this.extensionsWorkbenchService.queryGallery(assign(options, { names, pageSize: names.length }));
this.sortFirstPage(pager, names);
return new PagedModel(pager || []);
}
return new PagedModel([]);
}
private getRecommendationsModel(query: Query, options: IQueryOptions): TPromise<IPagedModel<IExtension>> {
private getRecommendationsModel(query: Query, options: IQueryOptions): Promise<IPagedModel<IExtension>> {
const value = query.value.replace(/@recommended/g, '').trim().toLowerCase();
return this.extensionsWorkbenchService.queryLocal()
......@@ -489,7 +485,7 @@ export class ExtensionsListView extends ViewletPanel {
const othersPromise = this.tipsService.getOtherRecommendations();
const workspacePromise = this.tipsService.getWorkspaceRecommendations();
return TPromise.join([othersPromise, workspacePromise])
return Promise.all([othersPromise, workspacePromise])
.then(([others, workspaceRecommendations]) => {
fileBasedRecommendations = fileBasedRecommendations.filter(x => workspaceRecommendations.every(({ extensionId }) => x.extensionId !== extensionId));
others = others.filter(x => x => workspaceRecommendations.every(({ extensionId }) => x.extensionId !== extensionId));
......@@ -514,7 +510,7 @@ export class ExtensionsListView extends ViewletPanel {
});
if (!names.length) {
return TPromise.as(new PagedModel([]));
return Promise.resolve(new PagedModel([]));
}
options.source = 'recommendations';
return this.extensionsWorkbenchService.queryGallery(assign(options, { names, pageSize: names.length }))
......@@ -559,7 +555,7 @@ export class ExtensionsListView extends ViewletPanel {
return installed.some(i => areSameExtensions({ id: i.id }, { id: recommendation.extensionId }));
}
private getWorkspaceRecommendationsModel(query: Query, options: IQueryOptions): TPromise<IPagedModel<IExtension>> {
private getWorkspaceRecommendationsModel(query: Query, options: IQueryOptions): Promise<IPagedModel<IExtension>> {
const value = query.value.replace(/@recommended:workspace/g, '').trim().toLowerCase();
return this.tipsService.getWorkspaceRecommendations()
.then(recommendations => {
......@@ -572,7 +568,7 @@ export class ExtensionsListView extends ViewletPanel {
this.telemetryService.publicLog('extensionWorkspaceRecommendations:open', { count: names.length });
if (!names.length) {
return TPromise.as(new PagedModel([]));
return Promise.resolve(new PagedModel([]));
}
options.source = 'recommendations-workspace';
return this.extensionsWorkbenchService.queryGallery(assign(options, { names, pageSize: names.length }))
......@@ -580,13 +576,13 @@ export class ExtensionsListView extends ViewletPanel {
});
}
private getKeymapRecommendationsModel(query: Query, options: IQueryOptions): TPromise<IPagedModel<IExtension>> {
private getKeymapRecommendationsModel(query: Query, options: IQueryOptions): Promise<IPagedModel<IExtension>> {
const value = query.value.replace(/@recommended:keymaps/g, '').trim().toLowerCase();
const names: string[] = this.tipsService.getKeymapRecommendations().map(({ extensionId }) => extensionId)
.filter(extensionId => extensionId.toLowerCase().indexOf(value) > -1);
if (!names.length) {
return TPromise.as(new PagedModel([]));
return Promise.resolve(new PagedModel([]));
}
options.source = 'recommendations-keymaps';
return this.extensionsWorkbenchService.queryGallery(assign(options, { names, pageSize: names.length }))
......@@ -832,12 +828,12 @@ export class WorkspaceRecommendedExtensionsView extends ExtensionsListView {
this.setRecommendationsToInstall();
}
private setRecommendationsToInstall(): TPromise<void> {
private setRecommendationsToInstall(): Promise<void> {
return this.getRecommendationsToInstall()
.then(recommendations => { this.installAllAction.recommendations = recommendations; });
}
private getRecommendationsToInstall(): TPromise<IExtensionRecommendation[]> {
private getRecommendationsToInstall(): Promise<IExtensionRecommendation[]> {
return this.tipsService.getWorkspaceRecommendations()
.then(recommendations => recommendations.filter(({ extensionId }) => !this.extensionsWorkbenchService.local.some(i => areSameExtensions({ id: extensionId }, { id: i.id }))));
}
......
......@@ -8,7 +8,6 @@ import * as nls from 'vs/nls';
import * as os from 'os';
import product from 'vs/platform/node/product';
import pkg from 'vs/platform/node/package';
import { TPromise } from 'vs/base/common/winjs.base';
import { Action, IAction } from 'vs/base/common/actions';
import { BaseEditor } from 'vs/workbench/browser/parts/editor/baseEditor';
import { ITelemetryService } from 'vs/platform/telemetry/common/telemetry';
......@@ -424,7 +423,7 @@ export class RuntimeExtensionsEditor extends BaseEditor {
this._contextMenuService.showContextMenu({
getAnchor: () => e.anchor,
getActions: () => TPromise.as(actions)
getActions: () => Promise.resolve(actions)
});
});
}
......@@ -451,8 +450,8 @@ export class ShowRuntimeExtensionsAction extends Action {
super(id, label);
}
public run(e?: any): TPromise<any> {
return this._editorService.openEditor(this._instantiationService.createInstance(RuntimeExtensionsInput), { revealIfOpened: true });
public async run(e?: any): Promise<any> {
await this._editorService.openEditor(this._instantiationService.createInstance(RuntimeExtensionsInput), { revealIfOpened: true });
}
}
......@@ -466,11 +465,11 @@ class ReportExtensionIssueAction extends Action {
super(id, label, 'extension-action report-issue');
}
run(extension: IRuntimeExtension): TPromise<any> {
run(extension: IRuntimeExtension): Promise<any> {
clipboard.writeText('```json \n' + JSON.stringify(extension.status, null, '\t') + '\n```');
window.open(this.generateNewIssueUrl(extension));
return TPromise.as(null);
return Promise.resolve(null);
}
private generateNewIssueUrl(extension: IRuntimeExtension): string {
......@@ -508,21 +507,20 @@ export class DebugExtensionHostAction extends Action {
super(DebugExtensionHostAction.ID, DebugExtensionHostAction.LABEL, DebugExtensionHostAction.CSS_CLASS);
}
run(): TPromise<any> {
async run(): Promise<any> {
const inspectPort = this._extensionService.getInspectPort();
if (!inspectPort) {
return this._dialogService.confirm({
const res = await this._dialogService.confirm({
type: 'info',
message: nls.localize('restart1', "Profile Extensions"),
detail: nls.localize('restart2', "In order to profile extensions a restart is required. Do you want to restart '{0}' now?", product.nameLong),
primaryButton: nls.localize('restart3', "Restart"),
secondaryButton: nls.localize('cancel', "Cancel")
}).then(res => {
if (res.confirmed) {
this._windowsService.relaunch({ addArgs: [`--inspect-extensions=${randomPort()}`] });
}
});
if (res.confirmed) {
this._windowsService.relaunch({ addArgs: [`--inspect-extensions=${randomPort()}`] });
}
}
return this._debugService.startDebugging(null, {
......@@ -544,9 +542,9 @@ export class StartExtensionHostProfileAction extends Action {
super(id, label);
}
run(): TPromise<any> {
run(): Promise<any> {
this._extensionHostProfileService.startProfiling();
return TPromise.as(null);
return Promise.resolve(null);
}
}
......@@ -561,9 +559,9 @@ export class StopExtensionHostProfileAction extends Action {
super(id, label);
}
run(): TPromise<any> {
run(): Promise<any> {
this._extensionHostProfileService.stopProfiling();
return TPromise.as(null);
return Promise.resolve(null);
}
}
......@@ -584,8 +582,8 @@ export class SaveExtensionHostProfileAction extends Action {
});
}
run(): TPromise<any> {
return TPromise.wrap(this._asyncRun());
run(): Promise<any> {
return Promise.resolve(this._asyncRun());
}
private async _asyncRun(): Promise<any> {
......
......@@ -6,7 +6,6 @@
import * as assert from 'assert';
import { assign } from 'vs/base/common/objects';
import { generateUuid } from 'vs/base/common/uuid';
import { TPromise } from 'vs/base/common/winjs.base';
import { IExtensionsWorkbenchService } from 'vs/workbench/parts/extensions/common/extensions';
import * as ExtensionsActions from 'vs/workbench/parts/extensions/electron-browser/extensionsActions';
import { ExtensionsWorkbenchService } from 'vs/workbench/parts/extensions/node/extensionsWorkbenchService';
......@@ -81,7 +80,7 @@ suite('ExtensionsActions Test', () => {
instantiationService.stubPromise(IExtensionManagementService, 'getInstalled', []);
instantiationService.stubPromise(IExtensionManagementService, 'getExtensionsReport', []);
instantiationService.stubPromise(IExtensionGalleryService, 'query', aPage());
instantiationService.stub(IExtensionService, { getExtensions: () => TPromise.wrap([]) });
instantiationService.stub(IExtensionService, { getExtensions: () => Promise.resolve([]) });
await (<TestExtensionEnablementService>instantiationService.get(IExtensionEnablementService)).reset();
instantiationService.set(IExtensionsWorkbenchService, instantiationService.createInstance(ExtensionsWorkbenchService));
......
......@@ -8,7 +8,6 @@ import * as assert from 'assert';
import * as path from 'path';
import * as fs from 'fs';
import * as os from 'os';
import { TPromise } from 'vs/base/common/winjs.base';
import * as uuid from 'vs/base/common/uuid';
import { mkdirp } from 'vs/base/node/pfs';
import {
......@@ -259,13 +258,13 @@ suite('ExtensionsTipsService Test', () => {
}
});
function setUpFolderWorkspace(folderName: string, recommendedExtensions: string[], ignoredRecommendations: string[] = []): TPromise<void> {
function setUpFolderWorkspace(folderName: string, recommendedExtensions: string[], ignoredRecommendations: string[] = []): Promise<void> {
const id = uuid.generateUuid();
parentResource = path.join(os.tmpdir(), 'vsctests', id);
return setUpFolder(folderName, parentResource, recommendedExtensions, ignoredRecommendations);
}
function setUpFolder(folderName: string, parentDir: string, recommendedExtensions: string[], ignoredRecommendations: string[] = []): TPromise<void> {
function setUpFolder(folderName: string, parentDir: string, recommendedExtensions: string[], ignoredRecommendations: string[] = []): Promise<void> {
const folderDir = path.join(parentDir, folderName);
const workspaceSettingsDir = path.join(folderDir, '.vscode');
return mkdirp(workspaceSettingsDir, 493).then(() => {
......
......@@ -8,7 +8,6 @@ import { assign } from 'vs/base/common/objects';
import { generateUuid } from 'vs/base/common/uuid';
import { ExtensionsListView } from 'vs/workbench/parts/extensions/electron-browser/extensionsViews';
import { TestInstantiationService } from 'vs/platform/instantiation/test/common/instantiationServiceMock';
import { TPromise } from 'vs/base/common/winjs.base';
import { IExtensionsWorkbenchService } from 'vs/workbench/parts/extensions/common/extensions';
import { ExtensionsWorkbenchService } from 'vs/workbench/parts/extensions/node/extensionsWorkbenchService';
import {
......@@ -120,7 +119,7 @@ suite('ExtensionsListView Tests', () => {
instantiationService.stub(IExtensionService, {
getExtensions: () => {
return TPromise.wrap([
return Promise.resolve([
{ id: localEnabledTheme.galleryIdentifier.id },
{ id: localEnabledLanguage.galleryIdentifier.id },
{ id: localRandom.galleryIdentifier.id },
......@@ -203,7 +202,7 @@ suite('ExtensionsListView Tests', () => {
assert.equal(result.get(0).name, builtInTheme.manifest.name, 'Unexpected extension for @builtin query.');
});
return TPromise.join([
return Promise.all([
allInstalledCheck,
installedCheck,
allDisabledCheck,
......@@ -270,7 +269,7 @@ suite('ExtensionsListView Tests', () => {
assert.equal(result.get(0).name, localDisabledLanguage.manifest.name, 'Unexpected extension for @disabled query with quoted category including space.');
});
return TPromise.join([
return Promise.resolve([
installedCategoryWithoutQuotesCheck,
installedCategoryWithQuotesCheck,
installedCategoryWithSpaceCheck,
......
......@@ -7,7 +7,6 @@ import * as sinon from 'sinon';
import * as assert from 'assert';
import * as fs from 'fs';
import { assign } from 'vs/base/common/objects';
import { TPromise } from 'vs/base/common/winjs.base';
import { generateUuid } from 'vs/base/common/uuid';
import { IExtensionsWorkbenchService, ExtensionState, AutoCheckUpdatesConfigurationKey, AutoUpdateConfigurationKey } from 'vs/workbench/parts/extensions/common/extensions';
import { ExtensionsWorkbenchService } from 'vs/workbench/parts/extensions/node/extensionsWorkbenchService';
......@@ -1215,8 +1214,8 @@ suite('ExtensionsWorkbenchServiceTest', () => {
return { firstPage: objects, total: objects.length, pageSize: objects.length, getPage: () => null };
}
function eventToPromise(event: Event<any>, count: number = 1): TPromise<void> {
return new TPromise<void>(c => {
function eventToPromise(event: Event<any>, count: number = 1): Promise<void> {
return new Promise<void>(c => {
let counter = 0;
event(() => {
if (++counter === count) {
......
......@@ -6,7 +6,6 @@
import 'vs/css!./media/explorerviewlet';
import { localize } from 'vs/nls';
import { IActionRunner } from 'vs/base/common/actions';
import { TPromise } from 'vs/base/common/winjs.base';
import * as DOM from 'vs/base/browser/dom';
import { VIEWLET_ID, ExplorerViewletVisibleContext, IFilesConfiguration, OpenEditorsVisibleContext, OpenEditorsVisibleCondition, IExplorerViewlet, VIEW_CONTAINER } from 'vs/workbench/parts/files/common/files';
import { ViewContainerViewlet, IViewletViewOptions } from 'vs/workbench/browser/parts/views/viewsViewlet';
......@@ -176,7 +175,7 @@ export class ExplorerViewlet extends ViewContainerViewlet implements IExplorerVi
this._register(this.contextService.onDidChangeWorkspaceName(e => this.updateTitleArea()));
}
create(parent: HTMLElement): TPromise<void> {
create(parent: HTMLElement): Promise<void> {
return super.create(parent).then(() => {
DOM.addClass(parent, 'explorer-viewlet');
});
......@@ -236,7 +235,7 @@ export class ExplorerViewlet extends ViewContainerViewlet implements IExplorerVi
return <EmptyView>this.getView(EmptyView.ID);
}
public setVisible(visible: boolean): TPromise<void> {
public setVisible(visible: boolean): Promise<void> {
this.viewletVisibleContextKey.set(visible);
return super.setVisible(visible);
}
......
......@@ -1071,7 +1071,7 @@ export class SCMViewlet extends PanelViewlet implements IViewModel, IViewsViewle
this.disposables.push(this.contributedViews);
}
create(parent: HTMLElement): TPromise<void> {
create(parent: HTMLElement): Promise<void> {
return super.create(parent).then(() => {
this.el = parent;
addClass(this.el, 'scm-viewlet');
......@@ -1165,7 +1165,7 @@ export class SCMViewlet extends PanelViewlet implements IViewModel, IViewsViewle
return (this.mainPanel ? 1 : 0) + this.repositoryPanels.length;
}
setVisible(visible: boolean): TPromise<void> {
setVisible(visible: boolean): Promise<void> {
const promises: TPromise<any>[] = [];
promises.push(super.setVisible(visible));
......@@ -1182,7 +1182,7 @@ export class SCMViewlet extends PanelViewlet implements IViewModel, IViewsViewle
promises.push(panel.setVisible(visible));
}
return TPromise.join(promises) as TPromise<any>;
return Promise.all(promises).then(() => null);
}
getOptimalWidth(): number {
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册