Remove the scan modal hide handler when unmounted

This commit is contained in:
Julian Stirling 2026-03-11 09:37:58 +00:00
parent 1090e693d4
commit 3cb70278dd

View file

@ -78,6 +78,8 @@ export default {
contrast: 1, contrast: 1,
saturation: 1, saturation: 1,
enteringFullscreen: false, enteringFullscreen: false,
modalEl: null,
beforeHideHandler: null,
}; };
}, },
computed: { computed: {
@ -89,14 +91,19 @@ export default {
}, },
}, },
mounted() { mounted() {
const modalEl = this.$refs.scanModal; this.modalEl = this.$refs.scanModal;
this.beforeHideHandler = (event) => {
modalEl.addEventListener("beforehide", (event) => {
if (this.enteringFullscreen) { if (this.enteringFullscreen) {
event.preventDefault(); event.preventDefault();
this.enteringFullscreen = false; this.enteringFullscreen = false;
} }
}); };
this.modalEl.addEventListener("beforehide", this.beforeHideHandler);
},
beforeUnmount() {
if (this.modalEl && this.beforeHideHandler) {
this.modalEl.removeEventListener("beforehide", this.beforeHideHandler);
}
}, },
methods: { methods: {
show() { show() {