diff --git a/app/src/common/shared/org/mozilla/vrbrowser/ui/widgets/NavigationBarWidget.java b/app/src/common/shared/org/mozilla/vrbrowser/ui/widgets/NavigationBarWidget.java index 5595632f8..e43f6a2ff 100644 --- a/app/src/common/shared/org/mozilla/vrbrowser/ui/widgets/NavigationBarWidget.java +++ b/app/src/common/shared/org/mozilla/vrbrowser/ui/widgets/NavigationBarWidget.java @@ -363,6 +363,11 @@ private void updateUI() { mBinding.navigationBarNavigation.urlBar.setDelegate(this); + if (mVoiceSearchWidget != null) { + mVoiceSearchWidget.releaseWidget(); + mVoiceSearchWidget = null; + } + if (mAttachedWindow != null) { mBinding.navigationBarNavigation.urlBar.attachToWindow(mAttachedWindow); } diff --git a/app/src/common/shared/org/mozilla/vrbrowser/ui/widgets/dialogs/VoiceSearchWidget.java b/app/src/common/shared/org/mozilla/vrbrowser/ui/widgets/dialogs/VoiceSearchWidget.java index cf171084d..305dbb2f5 100644 --- a/app/src/common/shared/org/mozilla/vrbrowser/ui/widgets/dialogs/VoiceSearchWidget.java +++ b/app/src/common/shared/org/mozilla/vrbrowser/ui/widgets/dialogs/VoiceSearchWidget.java @@ -26,6 +26,7 @@ import com.mozilla.speechlibrary.STTResult; import org.mozilla.vrbrowser.R; +import org.mozilla.vrbrowser.VRBrowserActivity; import org.mozilla.vrbrowser.browser.SettingsStore; import org.mozilla.vrbrowser.browser.engine.EngineProvider; import org.mozilla.vrbrowser.browser.engine.SessionStore; @@ -105,6 +106,7 @@ public void updateUI() { // Inflate this data binding layout mBinding = DataBindingUtil.inflate(inflater, R.layout.voice_search_dialog, this, true); + mBinding.setLifecycleOwner((VRBrowserActivity)getContext()); Drawable mVoiceInputBackgroundDrawable = getResources().getDrawable(R.drawable.ic_voice_search_volume_input_black, getContext().getTheme()); mVoiceInputClipDrawable = new ClipDrawable(getContext().getDrawable(R.drawable.ic_voice_search_volume_input_clip), Gravity.START, ClipDrawable.HORIZONTAL);