diff --git a/app/src/main/java/org/mozilla/fenix/browser/BaseBrowserFragment.kt b/app/src/main/java/org/mozilla/fenix/browser/BaseBrowserFragment.kt index bf5a04ce1..6ed9a3715 100644 --- a/app/src/main/java/org/mozilla/fenix/browser/BaseBrowserFragment.kt +++ b/app/src/main/java/org/mozilla/fenix/browser/BaseBrowserFragment.kt @@ -59,6 +59,7 @@ import mozilla.components.browser.state.state.TabSessionState import mozilla.components.browser.state.state.content.DownloadState import mozilla.components.browser.state.store.BrowserStore import mozilla.components.browser.thumbnails.BrowserThumbnails +import mozilla.components.browser.toolbar.BrowserToolbar import mozilla.components.concept.base.crash.Breadcrumb import mozilla.components.concept.engine.permission.SitePermissions import mozilla.components.concept.engine.prompt.ShareData @@ -207,6 +208,8 @@ abstract class BaseBrowserFragment : internal val browserToolbarView: BrowserToolbarView get() = _browserToolbarView!! + internal lateinit var browserToolbar: BrowserToolbar + protected val readerViewFeature = ViewBoundFeatureWrapper() protected val thumbnailsFeature = ViewBoundFeatureWrapper() @@ -453,6 +456,8 @@ abstract class BaseBrowserFragment : lifecycleOwner = viewLifecycleOwner, ) + browserToolbar = browserToolbarView.view + if (IncompleteRedesignToolbarFeature(context.settings()).isEnabled) { val toolbarView = if (context.components.settings.toolbarPosition == ToolbarPosition.BOTTOM) { // Should refactor this so there is no added view to remove to begin with diff --git a/app/src/main/java/org/mozilla/fenix/customtabs/ExternalAppBrowserFragment.kt b/app/src/main/java/org/mozilla/fenix/customtabs/ExternalAppBrowserFragment.kt index c2df28f24..0359581b9 100644 --- a/app/src/main/java/org/mozilla/fenix/customtabs/ExternalAppBrowserFragment.kt +++ b/app/src/main/java/org/mozilla/fenix/customtabs/ExternalAppBrowserFragment.kt @@ -14,7 +14,6 @@ import kotlinx.coroutines.Dispatchers import kotlinx.coroutines.launch import kotlinx.coroutines.withContext import mozilla.components.browser.state.state.SessionState -import mozilla.components.browser.toolbar.BrowserToolbar import mozilla.components.concept.engine.manifest.WebAppManifestParser import mozilla.components.concept.engine.manifest.getOrNull import mozilla.components.concept.engine.permission.SitePermissions @@ -56,7 +55,6 @@ class ExternalAppBrowserFragment : BaseBrowserFragment() { val customTabSessionId = customTabSessionId ?: return val activity = requireActivity() val components = activity.components - val toolbar = binding.root.findViewById(R.id.toolbar) val manifest = args.webAppManifest?.let { json -> WebAppManifestParser().parse(json).getOrNull() } @@ -65,7 +63,7 @@ class ExternalAppBrowserFragment : BaseBrowserFragment() { feature = CustomTabsIntegration( store = requireComponents.core.store, useCases = requireComponents.useCases.customTabsUseCases, - toolbar = toolbar, + toolbar = browserToolbar, sessionId = customTabSessionId, activity = activity, onItemTapped = { browserToolbarInteractor.onBrowserToolbarMenuItemTapped(it) }, @@ -100,7 +98,7 @@ class ExternalAppBrowserFragment : BaseBrowserFragment() { } }, owner = this, - view = toolbar, + view = browserToolbar, ) if (manifest != null) {