diff --git a/src/components/middle/composer/hooks/useInputCustomEmojis.ts b/src/components/middle/composer/hooks/useInputCustomEmojis.ts index 945eb7f0c..2f0f1c6f1 100644 --- a/src/components/middle/composer/hooks/useInputCustomEmojis.ts +++ b/src/components/middle/composer/hooks/useInputCustomEmojis.ts @@ -132,6 +132,14 @@ export default function useInputCustomEmojis( return addCustomEmojiInputRenderCallback(synchronizeElements); }, [synchronizeElements]); + useEffect(() => { + const activePlayersById = playersById.current; + // Always clear players on unmount + return () => { + clearPlayers(Array.from(activePlayersById.keys())); + }; + }, []); + useEffect(() => { if (!getHtml() || !inputRef.current || !sharedCanvasRef.current || !isActive || !isReady) { clearPlayers(Array.from(playersById.current.keys()));