@@ -110,7 +110,7 @@ export interface SerializedFloatingGroup {
110
110
111
111
export interface SerializedPopoutGroup {
112
112
data : GroupPanelViewState ;
113
- gridReferenceGroup : string ;
113
+ gridReferenceGroup ? : string ;
114
114
position : Box | null ;
115
115
}
116
116
@@ -339,7 +339,7 @@ export class DockviewComponent
339
339
private readonly _popoutGroups : {
340
340
window : PopoutWindow ;
341
341
popoutGroup : DockviewGroupPanel ;
342
- referenceGroup : DockviewGroupPanel ;
342
+ referenceGroup : string ;
343
343
disposable : IDisposable ;
344
344
} [ ] = [ ] ;
345
345
private readonly _rootDropTarget : Droptarget ;
@@ -676,7 +676,7 @@ export class DockviewComponent
676
676
const value = {
677
677
window : _window ,
678
678
popoutGroup : group ,
679
- referenceGroup,
679
+ referenceGroup : referenceGroup . id ,
680
680
disposable : popoutWindowDisposable ,
681
681
} ;
682
682
@@ -1026,7 +1026,7 @@ export class DockviewComponent
1026
1026
( group ) => {
1027
1027
return {
1028
1028
data : group . popoutGroup . toJSON ( ) as GroupPanelViewState ,
1029
- gridReferenceGroup : group . referenceGroup . id ,
1029
+ gridReferenceGroup : group . referenceGroup ,
1030
1030
position : group . window . dimensions ( ) ,
1031
1031
} ;
1032
1032
}
@@ -1159,19 +1159,16 @@ export class DockviewComponent
1159
1159
1160
1160
const group = createGroupFromSerializedState ( data ) ;
1161
1161
1162
- if ( ! gridReferenceGroup ) {
1163
- /**
1164
- * workaround to handle <= v1.9.2
1165
- */
1166
- this . doAddGroup ( group , [ 0 ] ) ;
1167
- }
1168
-
1169
1162
this . addPopoutGroup (
1170
- this . getPanel ( gridReferenceGroup ) ?? group ,
1163
+ ( gridReferenceGroup
1164
+ ? this . getPanel ( gridReferenceGroup )
1165
+ : undefined ) ?? group ,
1171
1166
{
1172
1167
skipRemoveGroup : true ,
1173
1168
position : position ?? undefined ,
1174
- overridePopoutGroup : group ,
1169
+ overridePopoutGroup : gridReferenceGroup
1170
+ ? group
1171
+ : undefined ,
1175
1172
}
1176
1173
) ;
1177
1174
}
@@ -1581,8 +1578,11 @@ export class DockviewComponent
1581
1578
if ( selectedGroup ) {
1582
1579
if ( ! options ?. skipDispose ) {
1583
1580
if ( ! options ?. skipPopoutAssociated ) {
1584
- if ( this . _groups . has ( selectedGroup . referenceGroup . id ) ) {
1585
- this . removeGroup ( selectedGroup . referenceGroup ) ;
1581
+ const refGroup = this . getPanel (
1582
+ selectedGroup . referenceGroup
1583
+ ) ;
1584
+ if ( refGroup ) {
1585
+ this . removeGroup ( refGroup ) ;
1586
1586
}
1587
1587
}
1588
1588
0 commit comments