fix(viewpane): use resize observer to set viewpane dimensions

This commit is contained in:
braks
2022-10-07 22:55:38 +02:00
committed by Braks
parent 723a03bca1
commit a8d0830dcd
@@ -57,19 +57,15 @@ let transform = $ref({
zoom: clampedZoom, zoom: clampedZoom,
}) })
const { width, height } = useElementBounding(viewportEl) useResizeObserver(viewportEl, () => {
if (!viewportEl.value) return
const stop = watch( const { width, height } = getDimensions(viewportEl.value)
[width, height], dimensions.width = width
([newWidth, newHeight]) => { dimensions.height = height
dimensions.width = newWidth })
dimensions.height = newHeight
},
{ immediate: true },
)
const window = useWindow() const window = useWindow()
if ('screen' in window) {
useEventListener(window, 'resize', () => { useEventListener(window, 'resize', () => {
if (!viewportEl.value) return if (!viewportEl.value) return
@@ -77,7 +73,6 @@ if ('screen' in window) {
dimensions.width = width dimensions.width = width
dimensions.height = height dimensions.height = height
}) })
}
onBeforeUnmount(stop) onBeforeUnmount(stop)