From f39313d9086c3da518621810ddc70a3c1009de30 Mon Sep 17 00:00:00 2001 From: ekager Date: Wed, 24 Jun 2020 17:28:09 -0400 Subject: [PATCH] For #8374 - On external session removed, handle back press --- .../org/mozilla/fenix/browser/BaseBrowserFragment.kt | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) 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 31a49a972..4991968da 100644 --- a/app/src/main/java/org/mozilla/fenix/browser/BaseBrowserFragment.kt +++ b/app/src/main/java/org/mozilla/fenix/browser/BaseBrowserFragment.kt @@ -23,7 +23,6 @@ import androidx.navigation.fragment.findNavController import com.google.android.material.snackbar.Snackbar import kotlinx.android.synthetic.main.fragment_browser.* import kotlinx.android.synthetic.main.fragment_browser.view.* -import kotlinx.android.synthetic.main.fragment_installed_add_on_details.* import kotlinx.coroutines.Dispatchers.IO import kotlinx.coroutines.Dispatchers.Main import kotlinx.coroutines.ExperimentalCoroutinesApi @@ -128,9 +127,6 @@ abstract class BaseBrowserFragment : Fragment(), UserInteractionHandler, Session protected val browserToolbarView: BrowserToolbarView get() = _browserToolbarView!! - private val sessionManager: SessionManager - get() = requireComponents.core.sessionManager - protected val readerViewFeature = ViewBoundFeatureWrapper() private val sessionFeature = ViewBoundFeatureWrapper() @@ -813,9 +809,10 @@ abstract class BaseBrowserFragment : Fragment(), UserInteractionHandler, Session protected open fun removeSessionIfNeeded(): Boolean { getSessionById()?.let { session -> val sessionManager = requireComponents.core.sessionManager - if (session.source == Session.Source.ACTION_VIEW) { + return if (session.source == Session.Source.ACTION_VIEW) { activity?.finish() sessionManager.remove(session) + true } else { val isLastSession = sessionManager.sessionsOfType(private = session.private).count() == 1 @@ -823,7 +820,7 @@ abstract class BaseBrowserFragment : Fragment(), UserInteractionHandler, Session sessionManager.remove(session, true) } val goToOverview = isLastSession || !session.hasParentSession - return !goToOverview + !goToOverview } } return false