From 749e87f228d93c55d42c144e152368295ef03480 Mon Sep 17 00:00:00 2001 From: Jon Staab Date: Sat, 29 Aug 2026 10:12:09 -0700 Subject: [PATCH] Optimize tippy by lazily instantiation --- src/app/components/ChatMessage.svelte | 4 ++- src/app/components/CurrencyInput.svelte | 4 ++- src/app/components/EventActions.svelte | 4 +-- src/app/components/ProfileMenu.svelte | 4 +-- src/app/components/ProfileMultiSelect.svelte | 4 ++- src/app/components/RoomCompose.svelte | 4 +-- src/app/components/RoomItemMenuButton.svelte | 4 +-- src/app/components/TopicMultiSelect.svelte | 4 ++- src/lib/components/EmojiButton.svelte | 4 +-- src/lib/components/IconPickerButton.svelte | 4 ++- src/lib/components/MenuButton.svelte | 4 +-- src/lib/components/Tippy.svelte | 34 ++++++++++++++------ src/lib/components/Tooltip.svelte | 4 +-- src/lib/html.ts | 13 ++++++++ 14 files changed, 66 insertions(+), 29 deletions(-) diff --git a/src/app/components/ChatMessage.svelte b/src/app/components/ChatMessage.svelte index 09f53bfc..2e036a74 100644 --- a/src/app/components/ChatMessage.svelte +++ b/src/app/components/ChatMessage.svelte @@ -56,11 +56,12 @@ if (popoverIsVisible) { popover?.hide() } else { - popover?.show() + showPopover() } } let popover: Instance | undefined = $state() + let showPopover: () => void = $state(() => {}) let popoverIsVisible = $state(false) @@ -71,6 +72,7 @@ {#if !isMobile} void = $state(() => {}) let instance: any = $state() $effect(() => { if ($term) { - popover?.show() + showPopover() } else { popover?.hide() } @@ -82,6 +83,7 @@ {/if} popover?.show() - const hidePopover = () => popover?.hide() const onEmoji = async (emoji: NativeEmoji) => { @@ -48,6 +46,7 @@ } let popover: Instance | undefined = $state() + let showPopover: () => void = $state(() => {})
@@ -62,6 +61,7 @@