File tree Expand file tree Collapse file tree 1 file changed +8
-3
lines changed
source/class/qxl/datagrid/source/tree Expand file tree Collapse file tree 1 file changed +8
-3
lines changed Original file line number Diff line number Diff line change @@ -92,8 +92,6 @@ qx.Class.define("qxl.datagrid.source.tree.TreeDataSource", {
92
92
this . __rowMetaDatas = [ ] ;
93
93
if ( oldValue ) {
94
94
let oldRowMetaDatas = this . __rowMetaDatas ;
95
- this . __queue = [ ] ;
96
- await this . flushQueue ( ) ;
97
95
this . __rowMetaDataByNode = { } ;
98
96
this . __rowMetaDatas = [ ] ;
99
97
for ( let rowMeta in oldRowMetaDatas ) {
@@ -197,6 +195,7 @@ qx.Class.define("qxl.datagrid.source.tree.TreeDataSource", {
197
195
async expandNode ( node ) {
198
196
await this . queue ( ( ) => this . _expandNode ( node ) ) ;
199
197
} ,
198
+
200
199
/**
201
200
* Expands given node.
202
201
* Is called inside of this class, so its operation is not queued.
@@ -271,7 +270,13 @@ qx.Class.define("qxl.datagrid.source.tree.TreeDataSource", {
271
270
* @override
272
271
*/
273
272
async collapseNode ( node ) {
274
- await this . queue ( ( ) => this . _collapseNode ( node ) ) ;
273
+ await this . queue ( ( ) => {
274
+ let rowMeta = this . _getNodeMetaData ( node ) ;
275
+ // Check that the node is in the tree - it might have been removed since we were queued
276
+ if ( rowMeta ) {
277
+ this . _collapseNode ( node ) ;
278
+ }
279
+ } ) ;
275
280
} ,
276
281
277
282
/**
You can’t perform that action at this time.
0 commit comments