diff --git a/app/src/main/java/org/mozilla/fenix/browser/BrowserFragment.kt b/app/src/main/java/org/mozilla/fenix/browser/BrowserFragment.kt index c7c8151f30..bbc9a9c5c6 100644 --- a/app/src/main/java/org/mozilla/fenix/browser/BrowserFragment.kt +++ b/app/src/main/java/org/mozilla/fenix/browser/BrowserFragment.kt @@ -300,7 +300,15 @@ class BrowserFragment : BaseBrowserFragment(), UserInteractionHandler { } private fun initTranslationsAction(context: Context, view: View) { - if (!context.settings().enableTranslations) { + val isEngineSupported = + context.components.core.store.state.translationEngine.isEngineSupported + if ( + !context.settings().enableTranslations && + ( + isEngineSupported == null || + isEngineSupported == false + ) + ) { return } diff --git a/app/src/main/java/org/mozilla/fenix/browser/TranslationsBinding.kt b/app/src/main/java/org/mozilla/fenix/browser/TranslationsBinding.kt index f96629bfe9..b3b0300414 100644 --- a/app/src/main/java/org/mozilla/fenix/browser/TranslationsBinding.kt +++ b/app/src/main/java/org/mozilla/fenix/browser/TranslationsBinding.kt @@ -72,13 +72,16 @@ class TranslationsBinding( // Session Translations State Behavior (Tab) val sessionTranslationsState = state.sessionState.translationsState + if (sessionTranslationsState.isTranslated) { - val fromSelected = sessionTranslationsState.translationEngineState?.initialFromLanguage( - translateFromLanguages, - ) - val toSelected = sessionTranslationsState.translationEngineState?.initialToLanguage( - translateToLanguages, - ) + val fromSelected = + sessionTranslationsState.translationEngineState?.initialFromLanguage( + translateFromLanguages, + ) + val toSelected = + sessionTranslationsState.translationEngineState?.initialToLanguage( + translateToLanguages, + ) if (fromSelected != null && toSelected != null) { onStateUpdated( diff --git a/app/src/main/java/org/mozilla/fenix/components/toolbar/DefaultToolbarMenu.kt b/app/src/main/java/org/mozilla/fenix/components/toolbar/DefaultToolbarMenu.kt index c820a384c8..b814238cdd 100644 --- a/app/src/main/java/org/mozilla/fenix/components/toolbar/DefaultToolbarMenu.kt +++ b/app/src/main/java/org/mozilla/fenix/components/toolbar/DefaultToolbarMenu.kt @@ -198,7 +198,7 @@ open class DefaultToolbarMenu( */ @VisibleForTesting(otherwise = PRIVATE) fun shouldShowTranslations(): Boolean = selectedSession?.let { - context.settings().enableTranslations + context.settings().enableTranslations && store.state.translationEngine.isEngineSupported == true } ?: false // End of predicates //