提交 e16d1f06 编写于 作者: A Alex Ross

Add default URI if not provided in dialog API

Fixes #111585
上级 f2ae4927
......@@ -23,12 +23,20 @@ export class MainThreadDialogs implements MainThreadDiaglogsShape {
//
}
$showOpenDialog(options?: MainThreadDialogOpenOptions): Promise<URI[] | undefined> {
return Promise.resolve(this._fileDialogService.showOpenDialog(MainThreadDialogs._convertOpenOptions(options)));
async $showOpenDialog(options?: MainThreadDialogOpenOptions): Promise<URI[] | undefined> {
const convertedOptions = MainThreadDialogs._convertOpenOptions(options);
if (!convertedOptions.defaultUri) {
convertedOptions.defaultUri = await this._fileDialogService.defaultFilePath();
}
return Promise.resolve(this._fileDialogService.showOpenDialog(convertedOptions));
}
$showSaveDialog(options?: MainThreadDialogSaveOptions): Promise<URI | undefined> {
return Promise.resolve(this._fileDialogService.showSaveDialog(MainThreadDialogs._convertSaveOptions(options)));
async $showSaveDialog(options?: MainThreadDialogSaveOptions): Promise<URI | undefined> {
const convertedOptions = MainThreadDialogs._convertSaveOptions(options);
if (!convertedOptions.defaultUri) {
convertedOptions.defaultUri = await this._fileDialogService.defaultFilePath();
}
return Promise.resolve(this._fileDialogService.showSaveDialog(convertedOptions));
}
private static _convertOpenOptions(options?: MainThreadDialogOpenOptions): IOpenDialogOptions {
......
......@@ -221,7 +221,7 @@ export class SimpleFileDialog {
}
private getScheme(available: readonly string[] | undefined, defaultUri: URI | undefined): string {
if (available) {
if (available && available.length > 0) {
if (defaultUri && (available.indexOf(defaultUri.scheme) >= 0)) {
return defaultUri.scheme;
}
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册