From 2ebd629e4f91e778d1867ffba8ca66091d9ead1c Mon Sep 17 00:00:00 2001 From: Enrico Ros Date: Fri, 23 Jun 2023 08:16:01 -0700 Subject: [PATCH] Fix interims on Mobile --- src/common/components/useSpeechRecognition.ts | 3 ++- src/common/util/pwaUtils.ts | 10 +++++++++- 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/src/common/components/useSpeechRecognition.ts b/src/common/components/useSpeechRecognition.ts index 207481d8c..46a2c0b87 100644 --- a/src/common/components/useSpeechRecognition.ts +++ b/src/common/components/useSpeechRecognition.ts @@ -1,5 +1,6 @@ import * as React from 'react'; +import { isChromeOnDesktopWindows } from '~/common/util/pwaUtils'; import { useUIPreferencesStore } from '~/common/state/store-ui'; @@ -64,7 +65,7 @@ export const useSpeechRecognition = (onResultCallback: (result: SpeechResult) => const instance = new Speech(); instance.lang = preferredLanguage; - instance.interimResults = true; + instance.interimResults = isChromeOnDesktopWindows(); instance.maxAlternatives = 1; instance.continuous = true; diff --git a/src/common/util/pwaUtils.ts b/src/common/util/pwaUtils.ts index 475c3354c..f761ec1b1 100644 --- a/src/common/util/pwaUtils.ts +++ b/src/common/util/pwaUtils.ts @@ -16,4 +16,12 @@ export const isPwa = (): boolean => { if (typeof window !== 'undefined') return window.matchMedia(`(min-width: ${width}px)`).matches; return true; -};*/ \ No newline at end of file +};*/ + +export const isChromeOnDesktopWindows = (): boolean => { + if (typeof window !== 'undefined') { + const agent = window.navigator.userAgent; + return agent.indexOf('Windows') > -1 && agent.indexOf('Chrome') > -1 && agent.indexOf('Mobile') === -1; + } + return false; +} \ No newline at end of file