diff --git a/packages/clients/dish/CHANGELOG.md b/packages/clients/dish/CHANGELOG.md
index 80e9a421f..208911746 100644
--- a/packages/clients/dish/CHANGELOG.md
+++ b/packages/clients/dish/CHANGELOG.md
@@ -1,5 +1,9 @@
# CHANGELOG
+## unpublished
+
+- Fix: The marker previously disappeared on being moved/reclicked on a second feature. This issue has been resolved.
+
## 1.1.0
- Feature: Update icon of `layerChooser` in `iconMenu` to `fa-layer-group` to clear-up the content hidden behind the menu button.
diff --git a/packages/clients/dish/src/plugins/Gfi/Content.vue b/packages/clients/dish/src/plugins/Gfi/Content.vue
index 68115ffeb..99324f5cf 100644
--- a/packages/clients/dish/src/plugins/Gfi/Content.vue
+++ b/packages/clients/dish/src/plugins/Gfi/Content.vue
@@ -7,7 +7,7 @@
icon
small
:aria-label="$t('common:plugins.gfi.header.close')"
- @click="close"
+ @click="close(true)"
>
fa-xmark
diff --git a/packages/components/CHANGELOG.md b/packages/components/CHANGELOG.md
index dc4c809d2..963696a76 100644
--- a/packages/components/CHANGELOG.md
+++ b/packages/components/CHANGELOG.md
@@ -1,5 +1,9 @@
# CHANGELOG
+## unpublished
+
+- Fix: The GFI's new flag `userInteraction` on the close interaction is now filled and forwarded according to whether the close call was due to the user intentionally closing the GFI rather than opening a new GFI. This is required for a fix in the GFI plugin.
+
## 2.1.0
- Feature: Add the possibility to update the icon of the button for closing the MoveHandle.
diff --git a/packages/components/MoveHandle.vue b/packages/components/MoveHandle.vue
index 202e6a662..9953b95e3 100644
--- a/packages/components/MoveHandle.vue
+++ b/packages/components/MoveHandle.vue
@@ -11,7 +11,7 @@
-
+
fa-xmark
@@ -139,9 +139,9 @@ export default Vue.extend({
},
methods: {
...mapMutations(['setMoveHandle']),
- close() {
+ close(userInteraction: boolean) {
this.setMoveHandle(null)
- this.closeFunction()
+ this.closeFunction(userInteraction)
},
moveHandle(key: string): void {
if (key === 'ArrowUp' || key === 'ArrowDown') {
diff --git a/packages/core/CHANGELOG.md b/packages/core/CHANGELOG.md
index d033e5e78..df8f22765 100644
--- a/packages/core/CHANGELOG.md
+++ b/packages/core/CHANGELOG.md
@@ -1,5 +1,9 @@
# CHANGELOG
+## unpublished
+
+- Fix: The GFI's new flag `userInteraction` on the close interaction is forwarded. This is required for a fix in the GFI plugin.
+
## 1.4.0
- Feature: Add hatchable markers; that is, when using `extendedMasterportalapiMarkers`, marker fills can now contain patterns for better accessibility.
diff --git a/packages/core/src/components/MapContainer.vue b/packages/core/src/components/MapContainer.vue
index e10630e19..9caf0429c 100644
--- a/packages/core/src/components/MapContainer.vue
+++ b/packages/core/src/components/MapContainer.vue
@@ -112,7 +112,7 @@ export default Vue.extend({
(this.moveHandle === null ||
this.moveHandle.plugin !== oldHandle.plugin)
) {
- oldHandle.closeFunction()
+ oldHandle.closeFunction(false)
}
// Make sure the element is properly updated.
this.moveHandleKey += 1
diff --git a/packages/plugins/Gfi/CHANGELOG.md b/packages/plugins/Gfi/CHANGELOG.md
index 078e84c06..73eb5b03e 100644
--- a/packages/plugins/Gfi/CHANGELOG.md
+++ b/packages/plugins/Gfi/CHANGELOG.md
@@ -1,5 +1,9 @@
# CHANGELOG
+## unpublished
+
+- Fix: The `close` method previously always removed the pin when not in `extendedMasterportalapiMarkers` mode. This issue has been resolved by distinguishing whether a close operation happened in effect to a direct closing user interaction or was technically motivated.
+
## 1.2.1
- Fix: Add missing deregistration of event listeners on destruction.
diff --git a/packages/plugins/Gfi/src/components/Feature.vue b/packages/plugins/Gfi/src/components/Feature.vue
index 9cf7e494c..2b529e517 100644
--- a/packages/plugins/Gfi/src/components/Feature.vue
+++ b/packages/plugins/Gfi/src/components/Feature.vue
@@ -9,7 +9,7 @@
icon
small
:aria-label="$t(closeLabel)"
- @click="close"
+ @click="close(true)"
>
fa-xmark
diff --git a/packages/plugins/Gfi/src/components/Gfi.vue b/packages/plugins/Gfi/src/components/Gfi.vue
index 05624de55..a8ed21ec0 100644
--- a/packages/plugins/Gfi/src/components/Gfi.vue
+++ b/packages/plugins/Gfi/src/components/Gfi.vue
@@ -124,8 +124,8 @@ export default Vue.extend({
methods: {
...mapMutations(['setMoveHandle']),
...mapActions('plugin/gfi', ['close']),
- closeWindow() {
- this.close()
+ closeWindow(userInteraction: boolean) {
+ this.close(userInteraction)
// The list view is currently only implemented if the gfi is rendered as part of the iconMenu.
// TODO: Finding a different solution may be a task to be tackled in the future
if (
diff --git a/packages/plugins/Gfi/src/store/actions/index.ts b/packages/plugins/Gfi/src/store/actions/index.ts
index 01d7994e1..a6ce66a95 100644
--- a/packages/plugins/Gfi/src/store/actions/index.ts
+++ b/packages/plugins/Gfi/src/store/actions/index.ts
@@ -215,11 +215,14 @@ export const makeActions = () => {
}
})
},
- close({ commit, dispatch, rootGetters }) {
+ close({ commit, dispatch, rootGetters }, userInteraction = false) {
commit('clearFeatureInformation')
commit('setImageLoaded', false)
// NOTE: null is needed, as the payload is always the second argument...
- if (!rootGetters.configuration?.extendedMasterportalapiMarkers) {
+ if (
+ !rootGetters.configuration?.extendedMasterportalapiMarkers &&
+ userInteraction
+ ) {
dispatch('plugin/pins/removeMarker', null, { root: true })
}
dispatch('setCoreSelection', { feature: null })