From 1715446b13ba8cc8dba536823ee5e0444d256dc0 Mon Sep 17 00:00:00 2001 From: "Timothy J. Baek" Date: Thu, 26 Sep 2024 21:45:19 +0200 Subject: [PATCH] fix: call mode persisting after width change issue --- src/lib/components/chat/ChatControls.svelte | 16 ++++- .../chat/MessageInput/CallOverlay.svelte | 64 ++++++++++--------- 2 files changed, 48 insertions(+), 32 deletions(-) diff --git a/src/lib/components/chat/ChatControls.svelte b/src/lib/components/chat/ChatControls.svelte index 9cc44ce38..8a7c925ab 100644 --- a/src/lib/components/chat/ChatControls.svelte +++ b/src/lib/components/chat/ChatControls.svelte @@ -2,7 +2,7 @@ import { SvelteFlowProvider } from '@xyflow/svelte'; import { slide } from 'svelte/transition'; - import { onDestroy, onMount } from 'svelte'; + import { onDestroy, onMount, tick } from 'svelte'; import { mobile, showControls, showCallOverlay, showOverview } from '$lib/stores'; import Modal from '../common/Modal.svelte'; @@ -35,11 +35,23 @@ // listen to resize 1024px const mediaQuery = window.matchMedia('(min-width: 1024px)'); - const handleMediaQuery = (e) => { + const handleMediaQuery = async (e) => { if (e.matches) { largeScreen = true; + + if ($showCallOverlay) { + showCallOverlay.set(false); + await tick(); + showCallOverlay.set(true); + } } else { largeScreen = false; + + if ($showCallOverlay) { + showCallOverlay.set(false); + await tick(); + showCallOverlay.set(true); + } pane = null; } }; diff --git a/src/lib/components/chat/MessageInput/CallOverlay.svelte b/src/lib/components/chat/MessageInput/CallOverlay.svelte index 9e2d01a0b..b5c8ea1df 100644 --- a/src/lib/components/chat/MessageInput/CallOverlay.svelte +++ b/src/lib/components/chat/MessageInput/CallOverlay.svelte @@ -1,9 +1,6 @@