diff --git a/src/vs/workbench/api/common/extHost.api.impl.ts b/src/vs/workbench/api/common/extHost.api.impl.ts index f8382ef8b10..3952717d220 100644 --- a/src/vs/workbench/api/common/extHost.api.impl.ts +++ b/src/vs/workbench/api/common/extHost.api.impl.ts @@ -475,14 +475,14 @@ export function createApiFactoryAndRegisterActors(accessor: ServicesAccessor): I onDidChangeWindowState(listener, thisArg?, disposables?) { return extHostWindow.onDidChangeWindowState(listener, thisArg, disposables); }, - showInformationMessage(message: string, first: vscode.MessageOptions | string | vscode.MessageItem, ...rest: Array) { - return extHostMessageService.showMessage(extension, Severity.Info, message, first, rest); + showInformationMessage(message: string, ...rest: Array) { + return >extHostMessageService.showMessage(extension, Severity.Info, message, rest[0], >rest.slice(1)); }, - showWarningMessage(message: string, first: vscode.MessageOptions | string | vscode.MessageItem, ...rest: Array) { - return extHostMessageService.showMessage(extension, Severity.Warning, message, first, rest); + showWarningMessage(message: string, ...rest: Array) { + return >extHostMessageService.showMessage(extension, Severity.Warning, message, rest[0], >rest.slice(1)); }, - showErrorMessage(message: string, first: vscode.MessageOptions | string | vscode.MessageItem, ...rest: Array) { - return extHostMessageService.showMessage(extension, Severity.Error, message, first, rest); + showErrorMessage(message: string, ...rest: Array) { + return >extHostMessageService.showMessage(extension, Severity.Error, message, rest[0], >rest.slice(1)); }, showQuickPick(items: any, options?: vscode.QuickPickOptions, token?: vscode.CancellationToken): any { return extHostQuickOpen.showQuickPick(items, !!extension.enableProposedApi, options, token); @@ -533,7 +533,7 @@ export function createApiFactoryAndRegisterActors(accessor: ServicesAccessor): I createOutputChannel(name: string): vscode.OutputChannel { return extHostOutputService.createOutputChannel(name); }, - createWebviewPanel(viewType: string, title: string, showOptions: vscode.ViewColumn | { viewColumn: vscode.ViewColumn, preserveFocus?: boolean }, options: vscode.WebviewPanelOptions & vscode.WebviewOptions): vscode.WebviewPanel { + createWebviewPanel(viewType: string, title: string, showOptions: vscode.ViewColumn | { viewColumn: vscode.ViewColumn, preserveFocus?: boolean }, options?: vscode.WebviewPanelOptions & vscode.WebviewOptions): vscode.WebviewPanel { return extHostWebviews.createWebviewPanel(extension, viewType, title, showOptions, options); }, createWebviewTextEditorInset(editor: vscode.TextEditor, line: number, height: number, options?: vscode.WebviewOptions): vscode.WebviewEditorInset { @@ -751,7 +751,12 @@ export function createApiFactoryAndRegisterActors(accessor: ServicesAccessor): I }, openTunnel: (forward: vscode.TunnelOptions) => { checkProposedApiEnabled(extension); - return extHostTunnelService.openTunnel(forward); + return extHostTunnelService.openTunnel(forward).then(value => { + if (!value) { + throw new Error('cannot open tunnel'); + } + return value; + }); }, get tunnels() { checkProposedApiEnabled(extension); diff --git a/src/vs/workbench/api/common/extHostMessageService.ts b/src/vs/workbench/api/common/extHostMessageService.ts index fc383d97265..ff75e2f3393 100644 --- a/src/vs/workbench/api/common/extHostMessageService.ts +++ b/src/vs/workbench/api/common/extHostMessageService.ts @@ -24,10 +24,11 @@ export class ExtHostMessageService { this._proxy = mainContext.getProxy(MainContext.MainThreadMessageService); } - showMessage(extension: IExtensionDescription, severity: Severity, message: string, optionsOrFirstItem: vscode.MessageOptions | string, rest: string[]): Promise; - showMessage(extension: IExtensionDescription, severity: Severity, message: string, optionsOrFirstItem: vscode.MessageOptions | vscode.MessageItem, rest: vscode.MessageItem[]): Promise; - showMessage(extension: IExtensionDescription, severity: Severity, message: string, optionsOrFirstItem: vscode.MessageOptions | vscode.MessageItem | string, rest: Array): Promise; - showMessage(extension: IExtensionDescription, severity: Severity, message: string, optionsOrFirstItem: vscode.MessageOptions | string | vscode.MessageItem, rest: Array): Promise { + + showMessage(extension: IExtensionDescription, severity: Severity, message: string, optionsOrFirstItem: vscode.MessageOptions | string | undefined, rest: string[]): Promise; + showMessage(extension: IExtensionDescription, severity: Severity, message: string, optionsOrFirstItem: vscode.MessageOptions | vscode.MessageItem | undefined, rest: vscode.MessageItem[]): Promise; + showMessage(extension: IExtensionDescription, severity: Severity, message: string, optionsOrFirstItem: vscode.MessageOptions | vscode.MessageItem | string | undefined, rest: Array): Promise; + showMessage(extension: IExtensionDescription, severity: Severity, message: string, optionsOrFirstItem: vscode.MessageOptions | string | vscode.MessageItem | undefined, rest: Array): Promise { const options: MainThreadMessageOptions = { extension }; let items: (string | vscode.MessageItem)[]; diff --git a/src/vs/workbench/contrib/quickopen/browser/gotoSymbolHandler.ts b/src/vs/workbench/contrib/quickopen/browser/gotoSymbolHandler.ts index 16ef00ee8b7..5dfba2ef0c8 100644 --- a/src/vs/workbench/contrib/quickopen/browser/gotoSymbolHandler.ts +++ b/src/vs/workbench/contrib/quickopen/browser/gotoSymbolHandler.ts @@ -77,7 +77,7 @@ class OutlineModel extends QuickOpenModel { const searchValuePos = searchValue.indexOf(SCOPE_PREFIX) === 0 ? 1 : 0; // Check for match and update visibility and group label - this.entries.forEach((entry: SymbolEntry) => { + (>this.entries).forEach(entry => { // Clear all state first entry.setGroupLabel(undefined); @@ -98,7 +98,7 @@ class OutlineModel extends QuickOpenModel { }); // select comparator based on the presence of the colon-prefix - this.entries.sort(searchValuePos === 0 + (>this.entries).sort(searchValuePos === 0 ? SymbolEntry.compareByRank : SymbolEntry.compareByKindAndRank ); diff --git a/src/vs/workbench/contrib/themes/browser/themes.contribution.ts b/src/vs/workbench/contrib/themes/browser/themes.contribution.ts index 0643cb30048..821c5a920d7 100644 --- a/src/vs/workbench/contrib/themes/browser/themes.contribution.ts +++ b/src/vs/workbench/contrib/themes/browser/themes.contribution.ts @@ -228,7 +228,7 @@ function isItem(i: QuickPickInput): i is ThemeItem { } function toEntries(themes: Array, label?: string): QuickPickInput[] { - const toEntry = (theme: IColorTheme): ThemeItem => ({ id: theme.id, label: theme.label, description: theme.description }); + const toEntry = (theme: IColorTheme | IFileIconTheme): ThemeItem => ({ id: theme.id, label: theme.label, description: theme.description }); const sorter = (t1: ThemeItem, t2: ThemeItem) => t1.label.localeCompare(t2.label); let entries: QuickPickInput[] = themes.map(toEntry).sort(sorter); if (entries.length > 0 && label) {