@@ -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}
0 commit comments