diff --git a/app/src/main/java/org/mozilla/fenix/tabstray/TabsTrayFragment.kt b/app/src/main/java/org/mozilla/fenix/tabstray/TabsTrayFragment.kt index 7c462fe370..4ca0ae5dba 100644 --- a/app/src/main/java/org/mozilla/fenix/tabstray/TabsTrayFragment.kt +++ b/app/src/main/java/org/mozilla/fenix/tabstray/TabsTrayFragment.kt @@ -261,6 +261,10 @@ class TabsTrayFragment : AppCompatDialogFragment() { owner = this, view = view ) + + if (requireArguments().getBoolean(EXTRA_MULTI_SELECT)) { + tabsTrayStore.dispatch(TabsTrayAction.EnterSelectMode) + } } override fun onConfigurationChanged(newConfig: Configuration) { @@ -402,6 +406,8 @@ class TabsTrayFragment : AppCompatDialogFragment() { } companion object { + const val EXTRA_MULTI_SELECT = "enterMultiselect" + // Minimum number of list items for which to show the tabs tray as expanded. const val EXPAND_AT_LIST_SIZE = 4 diff --git a/app/src/main/java/org/mozilla/fenix/tabstray/browser/SelectionBannerBinding.kt b/app/src/main/java/org/mozilla/fenix/tabstray/browser/SelectionBannerBinding.kt index 117c23eff7..506d833bff 100644 --- a/app/src/main/java/org/mozilla/fenix/tabstray/browser/SelectionBannerBinding.kt +++ b/app/src/main/java/org/mozilla/fenix/tabstray/browser/SelectionBannerBinding.kt @@ -15,7 +15,6 @@ import kotlinx.android.synthetic.main.tabstray_multiselect_items.view.* import kotlinx.coroutines.ExperimentalCoroutinesApi import kotlinx.coroutines.flow.Flow import kotlinx.coroutines.flow.collect -import kotlinx.coroutines.flow.drop import kotlinx.coroutines.flow.map import mozilla.components.lib.state.helpers.AbstractBinding import mozilla.components.support.ktx.kotlinx.coroutines.flow.ifChanged @@ -70,8 +69,6 @@ class SelectionBannerBinding( override suspend fun onState(flow: Flow) { flow.map { it.mode } - // ignore initial mode update; we never start in select mode. - .drop(1) .ifChanged() .collect { mode -> val isSelectMode = mode is Select