From 3cb70278dd268b6c41f5fd8f6ca9bc8ad1ed8fa8 Mon Sep 17 00:00:00 2001 From: Julian Stirling Date: Wed, 11 Mar 2026 09:37:58 +0000 Subject: [PATCH] Remove the scan modal hide handler when unmounted --- .../scanListComponents/scanViewer.vue | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/webapp/src/components/tabContentComponents/scanListComponents/scanViewer.vue b/webapp/src/components/tabContentComponents/scanListComponents/scanViewer.vue index a9009f50..66517e74 100644 --- a/webapp/src/components/tabContentComponents/scanListComponents/scanViewer.vue +++ b/webapp/src/components/tabContentComponents/scanListComponents/scanViewer.vue @@ -78,6 +78,8 @@ export default { contrast: 1, saturation: 1, enteringFullscreen: false, + modalEl: null, + beforeHideHandler: null, }; }, computed: { @@ -89,14 +91,19 @@ export default { }, }, mounted() { - const modalEl = this.$refs.scanModal; - - modalEl.addEventListener("beforehide", (event) => { + this.modalEl = this.$refs.scanModal; + this.beforeHideHandler = (event) => { if (this.enteringFullscreen) { event.preventDefault(); this.enteringFullscreen = false; } - }); + }; + this.modalEl.addEventListener("beforehide", this.beforeHideHandler); + }, + beforeUnmount() { + if (this.modalEl && this.beforeHideHandler) { + this.modalEl.removeEventListener("beforehide", this.beforeHideHandler); + } }, methods: { show() {