diff --git a/src/vs/vscode.d.ts b/src/vs/vscode.d.ts index e4d482d177e9c24c6fc70b413ca465700ffd35b5..f6df945eaace36de0c59f90b34abd2c7d738cecf 100644 --- a/src/vs/vscode.d.ts +++ b/src/vs/vscode.d.ts @@ -6222,15 +6222,15 @@ declare module 'vscode' { /** * Creates a new [output channel](#OutputChannel) with the given name. - * By default the channel will not push the appended data and hence there will be a delay while showing it in the UI. - * Pass `true` for `push` argument to push the data and show immediately. + * By default the UI will not show the appended data immediately. + * To force UI to show the data immediately pass options with `force` parameter set to `true`. * * *NOTE* Default output channels help in improving the performance of VS Code. * * @param name Human-readable string which will be used to represent the channel in the UI. - * @param push Set to `true` to push the data and show in the UI immediately. + * @param options Optional options to control how the channel will be created. */ - export function createOutputChannel(name: string, push?: boolean): OutputChannel; + export function createOutputChannel(name: string, options?: { force?: boolean }): OutputChannel; /** * Create and show a new webview panel. diff --git a/src/vs/workbench/api/node/extHost.api.impl.ts b/src/vs/workbench/api/node/extHost.api.impl.ts index d05dc69358618789e0d82b4ccca51cda4473566d..38dfaab5085a8726ef42605e60dc1e30ef300803 100644 --- a/src/vs/workbench/api/node/extHost.api.impl.ts +++ b/src/vs/workbench/api/node/extHost.api.impl.ts @@ -432,8 +432,8 @@ export function createApiFactory( withProgress(options: vscode.ProgressOptions, task: (progress: vscode.Progress<{ message?: string; worked?: number }>, token: vscode.CancellationToken) => Thenable) { return extHostProgress.withProgress(extension, options, task); }, - createOutputChannel(name: string, push?: boolean): vscode.OutputChannel { - return extHostOutputService.createOutputChannel(name, push); + createOutputChannel(name: string, options?: { force?: boolean }): vscode.OutputChannel { + return extHostOutputService.createOutputChannel(name, options); }, createWebviewPanel(viewType: string, title: string, showOptions: vscode.ViewColumn | { viewColumn: vscode.ViewColumn, preserveFocus?: boolean }, options: vscode.WebviewPanelOptions & vscode.WebviewOptions): vscode.WebviewPanel { return extHostWebviews.createWebview(extension.extensionLocation, viewType, title, showOptions, options); diff --git a/src/vs/workbench/api/node/extHostOutputService.ts b/src/vs/workbench/api/node/extHostOutputService.ts index d2a9206224e76d7b8d2f1613235b42b6b0f3d07e..5245670f5af243227c7876df14b29fe08be478d3 100644 --- a/src/vs/workbench/api/node/extHostOutputService.ts +++ b/src/vs/workbench/api/node/extHostOutputService.ts @@ -106,12 +106,12 @@ export class ExtHostOutputService { this._proxy = mainContext.getProxy(MainContext.MainThreadOutputService); } - createOutputChannel(name: string, push: boolean): vscode.OutputChannel { + createOutputChannel(name: string, options?: { force?: boolean }): vscode.OutputChannel { name = name.trim(); if (!name) { throw new Error('illegal argument `name`. must not be falsy'); } else { - return push ? new ExtHostPushOutputChannel(name, this._proxy) : new ExtHostPullOutputChannel(name, this._outputDir, this._proxy); + return options && options.force ? new ExtHostPushOutputChannel(name, this._proxy) : new ExtHostPullOutputChannel(name, this._outputDir, this._proxy); } } }