diff --git a/web/src/components/AssistantChat/HappyComposer.tsx b/web/src/components/AssistantChat/HappyComposer.tsx index a9b47650..6982123a 100644 --- a/web/src/components/AssistantChat/HappyComposer.tsx +++ b/web/src/components/AssistantChat/HappyComposer.tsx @@ -100,7 +100,7 @@ export function HappyComposer(props: { }) }, [composerText]) - const { haptic: platformHaptic } = usePlatform() + const { haptic: platformHaptic, isTouch } = usePlatform() const activeWord = useActiveWord(inputState.text, inputState.selection, autocompletePrefixes) const [suggestions, selectedIndex, moveUp, moveDown, clearSuggestions] = useActiveSuggestions( activeWord, @@ -433,6 +433,7 @@ export function HappyComposer(props: {
isTelegramApp(), []) + const isTouch = useMemo( + () => typeof window !== 'undefined' && window.matchMedia('(pointer: coarse)').matches, + [] + ) return { isTelegram, + isTouch, haptic } } // Non-hook version for use outside React components export function getPlatform(): Platform { + const isTouch = typeof window !== 'undefined' && window.matchMedia('(pointer: coarse)').matches return { isTelegram: isTelegramApp(), + isTouch, haptic } }