simplify code

This commit is contained in:
Benjamin Pasero
2018-01-24 13:42:08 +01:00
parent d35e6e3f49
commit 5c9b0eb15e
3 changed files with 16 additions and 28 deletions

View File

@@ -355,7 +355,7 @@ export interface MainThreadWorkspaceShape extends IDisposable {
$startSearch(includePattern: string, includeFolder: string, excludePattern: string, maxResults: number, requestId: number): Thenable<UriComponents[]>;
$cancelSearch(requestId: number): Thenable<boolean>;
$saveAll(includeUntitled?: boolean): Thenable<boolean>;
$updateWorkspaceFolders(extensionName: string, index: number, deleteCount: number, ...workspaceFoldersToAdd: { uri: UriComponents, name?: string }[]): Thenable<boolean>;
$updateWorkspaceFolders(extensionName: string, index: number, deleteCount: number, workspaceFoldersToAdd: { uri: UriComponents, name?: string }[]): Thenable<boolean>;
}
export interface IFileChangeDto {

View File

@@ -89,7 +89,7 @@ export class ExtHostWorkspace implements ExtHostWorkspaceShape {
}
updateWorkspaceFolders(extensionName: string, index: number, deleteCount: number, ...workspaceFoldersToAdd: { uri: vscode.Uri, name?: string }[]): Thenable<boolean> {
let validatedDistinctWorkspaceFoldersToAdd: { uri: vscode.Uri, name?: string }[] = [];
const validatedDistinctWorkspaceFoldersToAdd: { uri: vscode.Uri, name?: string }[] = [];
if (Array.isArray(workspaceFoldersToAdd)) {
workspaceFoldersToAdd.forEach(folderToAdd => {
if (URI.isUri(folderToAdd.uri) && !validatedDistinctWorkspaceFoldersToAdd.some(f => isEqual(f.uri, folderToAdd.uri, !isLinux))) {
@@ -98,11 +98,11 @@ export class ExtHostWorkspace implements ExtHostWorkspaceShape {
});
}
if (index < 0) {
return Promise.resolve(false); // index has to be at least 0
if ([index, deleteCount].some(i => typeof i !== 'number' || i < 0)) {
return Promise.resolve(false); // validate numbers
}
if (deleteCount <= 0 && validatedDistinctWorkspaceFoldersToAdd.length === 0) {
if (deleteCount === 0 && validatedDistinctWorkspaceFoldersToAdd.length === 0) {
return Promise.resolve(false); // nothing to delete or add
}
@@ -118,7 +118,7 @@ export class ExtHostWorkspace implements ExtHostWorkspaceShape {
return Promise.resolve(false); // nothing actually changed
}
return this._proxy.$updateWorkspaceFolders(extensionName, index, deleteCount, ...validatedDistinctWorkspaceFoldersToAdd);
return this._proxy.$updateWorkspaceFolders(extensionName, index, deleteCount, validatedDistinctWorkspaceFoldersToAdd);
}
getWorkspaceFolder(uri: vscode.Uri, resolveParent?: boolean): vscode.WorkspaceFolder {