From 9109d2d1ad89d1a51c69eaf735f9b3517c1c49d8 Mon Sep 17 00:00:00 2001 From: sronveaux Date: Wed, 25 Sep 2024 11:48:47 +0200 Subject: [PATCH 1/4] Corrected infoclick bug with features out of layers --- src/components/infoclick/InfoClickWin.vue | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/components/infoclick/InfoClickWin.vue b/src/components/infoclick/InfoClickWin.vue index 6f6eb017..13a7b93f 100644 --- a/src/components/infoclick/InfoClickWin.vue +++ b/src/components/infoclick/InfoClickWin.vue @@ -128,7 +128,9 @@ export default { me.features = [] me.map.forEachFeatureAtPixel(evt.pixel, (feature, layer) => { - me.features.push([feature, layer]) + if (layer) { + me.features.push([feature, layer]) + } }); // collect feature attributes --> PropertyTable From 27108c1aac57453212e42eadb660acca17ae66af Mon Sep 17 00:00:00 2001 From: sronveaux Date: Wed, 25 Sep 2024 11:49:28 +0200 Subject: [PATCH 2/4] Unregistered map click event in infoclick component when closed --- src/components/infoclick/InfoClickWin.vue | 1 + 1 file changed, 1 insertion(+) diff --git a/src/components/infoclick/InfoClickWin.vue b/src/components/infoclick/InfoClickWin.vue index 13a7b93f..371473eb 100644 --- a/src/components/infoclick/InfoClickWin.vue +++ b/src/components/infoclick/InfoClickWin.vue @@ -197,6 +197,7 @@ export default { me.registerMapClick(); } else { // cleanup old data + me.registerMapClick(true); me.attributeData = null; me.coordsData = null; } From 83c4b5af3c209f0ff8110b219710094e17251d48 Mon Sep 17 00:00:00 2001 From: sronveaux Date: Wed, 25 Sep 2024 11:50:25 +0200 Subject: [PATCH 3/4] Updated InfoClick component unit tests --- .../components/infoclick/InfoClickWin.spec.js | 22 ++++++++++++++----- 1 file changed, 16 insertions(+), 6 deletions(-) diff --git a/tests/unit/specs/components/infoclick/InfoClickWin.spec.js b/tests/unit/specs/components/infoclick/InfoClickWin.spec.js index d6a0c70a..700836e1 100644 --- a/tests/unit/specs/components/infoclick/InfoClickWin.spec.js +++ b/tests/unit/specs/components/infoclick/InfoClickWin.spec.js @@ -104,15 +104,25 @@ describe('infoclick/InfoClickWin.vue', () => { }); it('show registers map click when module is opened', () => { - let cnt = 0; - const mockFn = () => { - cnt++; - }; - vm.registerMapClick = mockFn; + const map = new OlMap(); + vm.map = map; + const onSPy = sinon.replace(map, 'on', sinon.fake(map.on)); vm.show(false); vm.show(true); - expect(cnt).to.equal(1); + + expect(onSPy).to.have.been.calledOnceWithExactly('singleclick', vm.onMapClick); + }); + + it('show unregisters map click when module is closed', () => { + const map = new OlMap(); + vm.map = map; + const unSPy = sinon.replace(map, 'un', sinon.fake(map.un)); + + vm.show(true); + vm.show(false); + + expect(unSPy).to.have.been.calledOnceWithExactly('singleclick', vm.onMapClick); }); }); }); From a84a4e85c77ae02dc5da931b15625b707c5123be Mon Sep 17 00:00:00 2001 From: sronveaux Date: Wed, 25 Sep 2024 12:14:20 +0200 Subject: [PATCH 4/4] Corrected some typos in InfoClick component --- src/components/infoclick/InfoClickWin.vue | 26 +++++++++++------------ 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/src/components/infoclick/InfoClickWin.vue b/src/components/infoclick/InfoClickWin.vue index 371473eb..7dd2d895 100644 --- a/src/components/infoclick/InfoClickWin.vue +++ b/src/components/infoclick/InfoClickWin.vue @@ -66,7 +66,7 @@