From cf73cf50036b70517fd7146f3b5e9447c0b43698 Mon Sep 17 00:00:00 2001 From: Benjin Dubishar Date: Tue, 23 Jun 2020 21:08:40 -0700 Subject: [PATCH] Focus projects view when New Project is created (#11048) * Focusing for new project * Consolidated focus() logic --- .../src/controllers/mainController.ts | 9 ++++----- .../src/controllers/projectController.ts | 3 +-- 2 files changed, 5 insertions(+), 7 deletions(-) diff --git a/extensions/sql-database-projects/src/controllers/mainController.ts b/extensions/sql-database-projects/src/controllers/mainController.ts index e89c6ce08e..585e7d1996 100644 --- a/extensions/sql-database-projects/src/controllers/mainController.ts +++ b/extensions/sql-database-projects/src/controllers/mainController.ts @@ -88,14 +88,11 @@ export default class MainController implements Disposable { filter[constants.sqlDatabaseProject] = ['sqlproj']; let files: Uri[] | undefined = await this.apiWrapper.showOpenDialog({ filters: filter }); - const prevCount = this.projectsController.projects.length; if (files) { for (const file of files) { await this.projectsController.openProject(file); } - - await this.projectsController.focusProject(this.projectsController.projects[prevCount]); // focus the first of the newly-opened projects } } catch (err) { @@ -137,8 +134,10 @@ export default class MainController implements Disposable { // TODO: what if the selected folder is outside the workspace? const newProjFolderUri = (selectionResult as Uri[])[0]; - const newProjFilePath = await this.projectsController.createNewProject(newProjName as string, newProjFolderUri as Uri); - return this.projectsController.openProject(Uri.file(newProjFilePath)); + const newProjFilePath = await this.projectsController.createNewProject(newProjName, newProjFolderUri); + const proj = await this.projectsController.openProject(Uri.file(newProjFilePath)); + + return proj; } catch (err) { this.apiWrapper.showErrorMessage(getErrorMessage(err)); diff --git a/extensions/sql-database-projects/src/controllers/projectController.ts b/extensions/sql-database-projects/src/controllers/projectController.ts index 3598c17ef5..9ef7b7cf20 100644 --- a/extensions/sql-database-projects/src/controllers/projectController.ts +++ b/extensions/sql-database-projects/src/controllers/projectController.ts @@ -93,6 +93,7 @@ export class ProjectsController { try { this.refreshProjectsTree(); + this.focusProject(newProject); } catch (err) { // if the project didnt load - remove it from the list of open projects @@ -641,8 +642,6 @@ export class ProjectsController { //Refresh project to show the added files this.refreshProjectsTree(); - - await this.focusProject(project); } catch (err) { this.apiWrapper.showErrorMessage(utils.getErrorMessage(err));