Skip to content

Commit 4ae7735

Browse files
authored
Merge pull request #1949 from github/nora/rename-expanded-methods
Minor refactoring for expanded things
2 parents 09c60ec + 5c40293 commit 4ae7735

2 files changed

Lines changed: 29 additions & 17 deletions

File tree

extensions/ql-vscode/src/databases/db-manager.ts

Lines changed: 27 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -78,24 +78,21 @@ export class DbManager {
7878
public async removeDbItem(dbItem: DbItem): Promise<void> {
7979
await this.dbConfigStore.removeDbItem(dbItem);
8080

81-
// Updating the expanded items takes care of cleaning up
82-
// any non-existent items.
83-
await this.updateExpandedItems(this.getExpandedItems());
81+
await this.removeDbItemFromExpandedState(dbItem);
8482
}
8583

86-
public async updateDbItemExpandedState(
87-
dbItem: DbItem,
88-
itemExpanded: boolean,
89-
): Promise<void> {
90-
const currentExpandedItems = this.getExpandedItems();
84+
public async removeDbItemFromExpandedState(dbItem: DbItem): Promise<void> {
85+
// When collapsing or expanding a list we clean up the expanded state and remove
86+
// all items that don't exist anymore.
9187

92-
const newExpandedItems = updateExpandedItem(
93-
currentExpandedItems,
94-
dbItem,
95-
itemExpanded,
96-
);
88+
await this.updateDbItemExpandedState(dbItem, false);
89+
}
9790

98-
await this.updateExpandedItems(newExpandedItems);
91+
public async addDbItemToExpandedState(dbItem: DbItem): Promise<void> {
92+
// When collapsing or expanding a list we clean up the expanded state and remove
93+
// all items that don't exist anymore.
94+
95+
await this.updateDbItemExpandedState(dbItem, true);
9996
}
10097

10198
public async addNewRemoteRepo(
@@ -142,7 +139,7 @@ export class DbManager {
142139
newDbItem,
143140
);
144141

145-
await this.updateExpandedItems(newExpandedItems);
142+
await this.setExpandedItems(newExpandedItems);
146143
}
147144

148145
public async renameLocalDb(
@@ -214,4 +211,19 @@ export class DbManager {
214211

215212
await this.setExpandedItems(itemsToStore);
216213
}
214+
215+
private async updateDbItemExpandedState(
216+
dbItem: DbItem,
217+
itemExpanded: boolean,
218+
): Promise<void> {
219+
const currentExpandedItems = this.getExpandedItems();
220+
221+
const newExpandedItems = updateExpandedItem(
222+
currentExpandedItems,
223+
dbItem,
224+
itemExpanded,
225+
);
226+
227+
await this.updateExpandedItems(newExpandedItems);
228+
}
217229
}

extensions/ql-vscode/src/databases/ui/db-panel.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -386,7 +386,7 @@ export class DbPanel extends DisposableObject {
386386
throw Error("Expected a database item.");
387387
}
388388

389-
await this.dbManager.updateDbItemExpandedState(event.element.dbItem, false);
389+
await this.dbManager.removeDbItemFromExpandedState(event.element.dbItem);
390390
}
391391

392392
private async onDidExpandElement(
@@ -397,7 +397,7 @@ export class DbPanel extends DisposableObject {
397397
throw Error("Expected a database item.");
398398
}
399399

400-
await this.dbManager.updateDbItemExpandedState(event.element.dbItem, true);
400+
await this.dbManager.addDbItemToExpandedState(event.element.dbItem);
401401
}
402402

403403
/**

0 commit comments

Comments
 (0)