From a5bd75b27d0cb69a5f3c4713060b33e6e952c748 Mon Sep 17 00:00:00 2001 From: Sven Anders Date: Mon, 16 Dec 2024 12:23:02 +0100 Subject: [PATCH] On Map Point delete: Make Polyline Layer visible, if it was before --- app/javascript/controllers/maps_controller.js | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) diff --git a/app/javascript/controllers/maps_controller.js b/app/javascript/controllers/maps_controller.js index d0bb046d..9d255e70 100644 --- a/app/javascript/controllers/maps_controller.js +++ b/app/javascript/controllers/maps_controller.js @@ -382,10 +382,14 @@ export default class extends Controller { .then(data => { // Remove the marker and update all layers this.removeMarker(id); - + let wasPolyLayerVisible = false; // Explicitly remove old polylines layer from map if (this.polylinesLayer) { + if (this.map.hasLayer(this.polylinesLayer)) { + wasPolyLayerVisible = true; + } this.map.removeLayer(this.polylinesLayer); + } // Create new polylines layer @@ -397,10 +401,12 @@ export default class extends Controller { this.userSettings, this.distanceUnit ); - - // Add new polylines layer to map and to layer control - this.polylinesLayer.addTo(this.map); - + if (wasPolyLayerVisible) { + // Add new polylines layer to map and to layer control + this.polylinesLayer.addTo(this.map); + } else { + this.map.removeLayer(this.polylinesLayer); + } // Update the layer control if (this.layerControl) { this.map.removeControl(this.layerControl);