From 36eed6220f90d6481d5015f6a19d8485a71a9f89 Mon Sep 17 00:00:00 2001 From: nick-delirium Date: Tue, 24 Jan 2023 11:44:39 +0100 Subject: [PATCH] fix(ui): fix clickmap event listener --- frontend/app/player/web/Screen/Screen.ts | 1 + frontend/app/player/web/WebPlayer.ts | 11 ++++++++--- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/frontend/app/player/web/Screen/Screen.ts b/frontend/app/player/web/Screen/Screen.ts index b964d347a..9283c4e4b 100644 --- a/frontend/app/player/web/Screen/Screen.ts +++ b/frontend/app/player/web/Screen/Screen.ts @@ -217,6 +217,7 @@ export default class Screen { scaleFullPage() { if (!this.parentElement || !this.document) return; + const { width: boxWidth } = this.parentElement.getBoundingClientRect(); const { height, width } = this.document.body.getBoundingClientRect(); this.overlay.remove() diff --git a/frontend/app/player/web/WebPlayer.ts b/frontend/app/player/web/WebPlayer.ts index 091717d8d..541e942ca 100644 --- a/frontend/app/player/web/WebPlayer.ts +++ b/frontend/app/player/web/WebPlayer.ts @@ -76,8 +76,9 @@ export default class WebPlayer extends Player { } scaleFullPage = () => { - window.removeEventListener('resize', this.scale) - window.addEventListener('resize', this.screen.scaleFullPage) + window.removeEventListener('resize', this.scaleFullPage) + window.addEventListener('resize', this.scaleFullPage) + const portHeight = this.screen.scaleFullPage() return this.wpState.update({ portHeight }) } @@ -115,7 +116,11 @@ export default class WebPlayer extends Player { showClickmap = (...args: Parameters) => { this.freeze() - this.targetMarker.injectTargets(...args) + if (this.wpState.get().portHeight !== 0) { + this.targetMarker.injectTargets(...args) + } else { + setTimeout(() => this.showClickmap(...args), 500) + } } setMarkerClick = (...args: Parameters) => {