diff --git a/app/src/main/java/org/mozilla/fenix/components/toolbar/TabCounterToolbarButton.kt b/app/src/main/java/org/mozilla/fenix/components/toolbar/TabCounterToolbarButton.kt index a5454af15d..9bcafffe5f 100644 --- a/app/src/main/java/org/mozilla/fenix/components/toolbar/TabCounterToolbarButton.kt +++ b/app/src/main/java/org/mozilla/fenix/components/toolbar/TabCounterToolbarButton.kt @@ -11,9 +11,7 @@ import android.view.ViewGroup import mozilla.components.browser.session.Session import mozilla.components.browser.session.SessionManager import mozilla.components.concept.toolbar.Toolbar -import org.mozilla.fenix.HomeActivity import org.mozilla.fenix.R -import org.mozilla.fenix.ext.asActivity import java.lang.ref.WeakReference /** @@ -21,7 +19,8 @@ import java.lang.ref.WeakReference */ class TabCounterToolbarButton( private val sessionManager: SessionManager, - private val showTabs: () -> Unit + private val showTabs: () -> Unit, + private val isPrivate: Boolean ) : Toolbar.Action { private var reference: WeakReference = WeakReference(null) @@ -30,12 +29,9 @@ class TabCounterToolbarButton( val view = TabCounter(parent.context).apply { reference = WeakReference(this) - setCount( - (sessionManager.sessions - .filter { - (context.asActivity() as? HomeActivity)?.browsingModeManager?.isPrivate == it.private - }).size - ) + setCount(sessionManager.sessions.count { + it.private == isPrivate + }) setOnClickListener { it.performHapticFeedback(HapticFeedbackConstants.LONG_PRESS) showTabs.invoke() @@ -58,7 +54,9 @@ class TabCounterToolbarButton( override fun bind(view: View) = Unit private fun updateCount() { - reference.get()?.setCountWithAnimation(sessionManager.sessions.size) + reference.get()?.setCountWithAnimation(sessionManager.sessions.count { + it.private == isPrivate + }) } private val sessionManagerObserver = object : SessionManager.Observer { diff --git a/app/src/main/java/org/mozilla/fenix/components/toolbar/ToolbarIntegration.kt b/app/src/main/java/org/mozilla/fenix/components/toolbar/ToolbarIntegration.kt index 001822d24f..471e26bbc0 100644 --- a/app/src/main/java/org/mozilla/fenix/components/toolbar/ToolbarIntegration.kt +++ b/app/src/main/java/org/mozilla/fenix/components/toolbar/ToolbarIntegration.kt @@ -39,10 +39,11 @@ class ToolbarIntegration( val tabsAction = TabCounterToolbarButton( sessionManager, - showTabs = { + { Navigation.findNavController(toolbar) .navigate(BrowserFragmentDirections.actionBrowserFragmentToHomeFragment()) - } + }, + isPrivate ) toolbar.addBrowserAction(tabsAction) }