diff --git a/src/client/graphics/layers/EmojiTable.ts b/src/client/graphics/layers/EmojiTable.ts index ca87f009b..ef2745280 100644 --- a/src/client/graphics/layers/EmojiTable.ts +++ b/src/client/graphics/layers/EmojiTable.ts @@ -57,6 +57,15 @@ export class EmojiTable extends LitElement { private onEmojiClicked: (emoji: string) => void = () => {}; + private handleBackdropClick = (e: MouseEvent) => { + const panelContent = this.querySelector( + 'div[class*="bg-zinc-900"]', + ) as HTMLElement; + if (panelContent && !panelContent.contains(e.target as Node)) { + this.hideTable(); + } + }; + render() { if (!this.isVisible) { return null; @@ -64,43 +73,51 @@ export class EmojiTable extends LitElement { return html`