From e6ef6cd05be7f71a5e9c1eab9d06d22f69f8df8f Mon Sep 17 00:00:00 2001 From: MarcoJayUsai Date: Tue, 1 Apr 2025 15:01:51 +0200 Subject: [PATCH] fix(drawings): not initializing empty layers --- frontend/react/src/map/drawings/drawingsmanager.ts | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/frontend/react/src/map/drawings/drawingsmanager.ts b/frontend/react/src/map/drawings/drawingsmanager.ts index 19f739f7..4210ca1a 100644 --- a/frontend/react/src/map/drawings/drawingsmanager.ts +++ b/frontend/react/src/map/drawings/drawingsmanager.ts @@ -528,7 +528,9 @@ export class DCSDrawingsContainer { initFromData(drawingsData) { let hasContainers = false; Object.keys(drawingsData).forEach((layerName: string) => { - if (drawingsData[layerName]["name"] === undefined && drawingsData[layerName]["callsignStr"] === undefined) { + const layerIsAContainer = drawingsData[layerName]["name"] === undefined && drawingsData[layerName]["callsignStr"] === undefined; + const layerIsNotEmpty = Object.keys(drawingsData[layerName]).length > 0; + if (layerIsAContainer && layerIsNotEmpty) { const newContainer = new DCSDrawingsContainer(layerName, this); this.addSubContainer(newContainer); newContainer.initFromData(drawingsData[layerName]); @@ -580,7 +582,10 @@ export class DCSDrawingsContainer { else this.addDrawing(newDrawing); }); - if (othersContainer.getDrawings().length === 0) this.removeSubContainer(othersContainer); // Remove empty container + if (othersContainer.getDrawings().length === 0) { + this.removeSubContainer(othersContainer); // Remove empty container + // FIXME: it's not working for main containers. + } } getLayerGroup() {