From c318e19976b3e90b7715893253a0ebf6b6431ff6 Mon Sep 17 00:00:00 2001
From: rhenck <richard.henck@iqb.hu-berlin.de>
Date: Tue, 17 Aug 2021 18:02:13 +0200
Subject: [PATCH] [editor] Fix element panel still showing deleted element

---
 .../unit-view/page-view/canvas/canvas-element-overlay.ts       | 1 +
 .../page-view/properties/element-properties.component.ts       | 1 +
 projects/editor/src/app/selection.service.ts                   | 3 ++-
 3 files changed, 4 insertions(+), 1 deletion(-)

diff --git a/projects/editor/src/app/components/unit-view/page-view/canvas/canvas-element-overlay.ts b/projects/editor/src/app/components/unit-view/page-view/canvas/canvas-element-overlay.ts
index c6b375917..49d75c0e5 100644
--- a/projects/editor/src/app/components/unit-view/page-view/canvas/canvas-element-overlay.ts
+++ b/projects/editor/src/app/components/unit-view/page-view/canvas/canvas-element-overlay.ts
@@ -61,6 +61,7 @@ export abstract class CanvasElementOverlay {
       ])
         .subscribe((results: [UnitUIElement[], UnitPageSection]) => {
           this.unitService.deleteElementsFromSection(results[0], results[1]);
+          this.selectionService.clearElementSelection();
         })
         .unsubscribe();
     }
diff --git a/projects/editor/src/app/components/unit-view/page-view/properties/element-properties.component.ts b/projects/editor/src/app/components/unit-view/page-view/properties/element-properties.component.ts
index 4f1b63200..500d344a1 100644
--- a/projects/editor/src/app/components/unit-view/page-view/properties/element-properties.component.ts
+++ b/projects/editor/src/app/components/unit-view/page-view/properties/element-properties.component.ts
@@ -412,6 +412,7 @@ export class ElementPropertiesComponent implements OnInit, OnDestroy {
       .pipe(take(1))
       .subscribe(selectedPageSection => {
         this.unitService.deleteElementsFromSection(this.selectedElements, selectedPageSection);
+        this.selectionService.clearElementSelection();
       })
       .unsubscribe();
   }
diff --git a/projects/editor/src/app/selection.service.ts b/projects/editor/src/app/selection.service.ts
index 356759650..576164a54 100644
--- a/projects/editor/src/app/selection.service.ts
+++ b/projects/editor/src/app/selection.service.ts
@@ -74,10 +74,11 @@ export class SelectionService {
     this._selectedElements.next(this.selectedElementComponents.map(componentElement => componentElement.element));
   }
 
-  private clearElementSelection() {
+  clearElementSelection(): void {
     this.selectedElementComponents.forEach((overlayComponent: any) => {
       overlayComponent.setSelected(false);
     });
     this.selectedElementComponents = [];
+    this._selectedElements.next([]);
   }
 }
-- 
GitLab