|
|
|
@ -19,6 +19,7 @@ import org.mozilla.fenix.HomeActivity
|
|
|
|
|
import kotlinx.coroutines.ExperimentalCoroutinesApi
|
|
|
|
|
import mozilla.components.browser.state.selector.normalTabs
|
|
|
|
|
import mozilla.components.lib.state.ext.consumeFrom
|
|
|
|
|
import mozilla.components.support.base.feature.ViewBoundFeatureWrapper
|
|
|
|
|
import mozilla.components.ui.tabcounter.TabCounter
|
|
|
|
|
import org.mozilla.fenix.R
|
|
|
|
|
import org.mozilla.fenix.ext.requireComponents
|
|
|
|
@ -32,6 +33,8 @@ class TabsTrayFragment : AppCompatDialogFragment(), TabsTrayInteractor {
|
|
|
|
|
|
|
|
|
|
lateinit var behavior: BottomSheetBehavior<ConstraintLayout>
|
|
|
|
|
|
|
|
|
|
private val tabLayoutMediator = ViewBoundFeatureWrapper<TabLayoutMediator>()
|
|
|
|
|
|
|
|
|
|
private val selectTabUseCase by lazy {
|
|
|
|
|
SelectTabUseCaseWrapper(
|
|
|
|
|
requireComponents.analytics.metrics,
|
|
|
|
@ -85,11 +88,14 @@ class TabsTrayFragment : AppCompatDialogFragment(), TabsTrayInteractor {
|
|
|
|
|
|
|
|
|
|
setupPager(view.context, this, browserTrayInteractor, syncedTabsTrayInteractor)
|
|
|
|
|
|
|
|
|
|
TabLayoutMediator(
|
|
|
|
|
tabLayoutMediator.set(
|
|
|
|
|
feature = TabLayoutMediator(
|
|
|
|
|
tabLayout = tab_layout,
|
|
|
|
|
interactor = this,
|
|
|
|
|
store = requireComponents.core.store
|
|
|
|
|
).attach()
|
|
|
|
|
), owner = this,
|
|
|
|
|
view = view
|
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
consumeFrom(requireComponents.core.store) {
|
|
|
|
|
view.findViewById<TabCounter>(R.id.tab_counter)?.apply {
|
|
|
|
|