From a47562c5c66f681883f1d0f9bf63da3c690077b3 Mon Sep 17 00:00:00 2001 From: danzel Date: Thu, 31 Oct 2013 16:48:32 +1300 Subject: [PATCH] Clear _spiderfied on a zoomend unspiderfy. Fixes #268 --- spec/suites/spiderfySpec.js | 22 ++++++++++++++++++++++ src/MarkerCluster.Spiderfier.js | 2 ++ 2 files changed, 24 insertions(+) diff --git a/spec/suites/spiderfySpec.js b/spec/suites/spiderfySpec.js index a6080d5ce..366bf1a34 100644 --- a/spec/suites/spiderfySpec.js +++ b/spec/suites/spiderfySpec.js @@ -67,4 +67,26 @@ expect(marker._container.parentNode).to.be(map._pathRoot); expect(marker2._container.parentNode).to.be(map._pathRoot); }); + + describe('zoomend event listener', function () { + it('unspiderfies correctly', function () { + + var group = new L.MarkerClusterGroup(); + var marker = new L.Circle([1.5, 1.5], 10); + var marker2 = new L.Circle([1.5, 1.5], 10); + + group.addLayer(marker); + group.addLayer(marker2); + map.addLayer(group); + + marker.__parent.spiderfy(); + + expect(group._spiderfied).to.not.be(null); + + map.fire('zoomend'); + + //We should unspiderfy with no animation, so this should be null + expect(group._spiderfied).to.be(null); + }); + }); }); \ No newline at end of file diff --git a/src/MarkerCluster.Spiderfier.js b/src/MarkerCluster.Spiderfier.js index 2a1a6f476..ead03b4ce 100644 --- a/src/MarkerCluster.Spiderfier.js +++ b/src/MarkerCluster.Spiderfier.js @@ -111,6 +111,8 @@ L.MarkerCluster.include({ delete m._spiderLeg; } } + + group._spiderfied = null; } });