diff --git a/app/src/main/java/org/mozilla/fenix/HomeActivity.kt b/app/src/main/java/org/mozilla/fenix/HomeActivity.kt index 1df9303548..b2ff477614 100644 --- a/app/src/main/java/org/mozilla/fenix/HomeActivity.kt +++ b/app/src/main/java/org/mozilla/fenix/HomeActivity.kt @@ -8,7 +8,6 @@ import android.content.Context import android.content.Intent import android.os.Bundle import android.util.AttributeSet -import android.view.LayoutInflater import android.view.View import androidx.annotation.CallSuper import androidx.annotation.IdRes @@ -81,10 +80,8 @@ import org.mozilla.fenix.theme.ThemeManager import org.mozilla.fenix.utils.BrowsersCache import org.mozilla.fenix.utils.RunWhenReadyQueue import mozilla.components.concept.tabstray.TabsTray -import mozilla.components.browser.tabstray.TabsAdapter import mozilla.components.browser.tabstray.BrowserTabsTray import org.mozilla.fenix.tabtray.FenixTabsAdapter -import org.mozilla.fenix.tabtray.TabTrayViewHolder /** * The main activity of the application. The application is primarily a single Activity (this one) diff --git a/app/src/main/java/org/mozilla/fenix/tabtray/FenixTabsAdapter.kt b/app/src/main/java/org/mozilla/fenix/tabtray/FenixTabsAdapter.kt index 3382a3c0de..f2f24d3a2f 100644 --- a/app/src/main/java/org/mozilla/fenix/tabtray/FenixTabsAdapter.kt +++ b/app/src/main/java/org/mozilla/fenix/tabtray/FenixTabsAdapter.kt @@ -28,4 +28,4 @@ class FenixTabsAdapter( super.updateTabs(tabs) onTabsUpdated?.invoke() } -} \ No newline at end of file +} diff --git a/app/src/main/java/org/mozilla/fenix/tabtray/TabTrayView.kt b/app/src/main/java/org/mozilla/fenix/tabtray/TabTrayView.kt index 79a428602e..068871c22e 100644 --- a/app/src/main/java/org/mozilla/fenix/tabtray/TabTrayView.kt +++ b/app/src/main/java/org/mozilla/fenix/tabtray/TabTrayView.kt @@ -100,13 +100,18 @@ class TabTrayView( { it.content.private == isPrivate }, { }) - - val selectedBrowserTabIndex = if (isPrivate) { + val tabs = if (isPrivate) { view.context.components.core.store.state.privateTabs } else { view.context.components.core.store.state.normalTabs - }.indexOfFirst { it.id == view.context.components.core.store.state.selectedTabId } + } + val selectedBrowserTabIndex = tabs + .indexOfFirst { it.id == view.context.components.core.store.state.selectedTabId } + + if (tabs.size > EXPAND_AT_SIZE) { + behavior.state = BottomSheetBehavior.STATE_EXPANDED + } (view.tabsTray as? BrowserTabsTray)?.also { tray -> TabsTouchHelper(tray.tabsAdapter).attachToRecyclerView(tray) @@ -192,6 +197,7 @@ class TabTrayView( companion object { private const val DEFAULT_TAB_ID = 0 private const val PRIVATE_TAB_ID = 1 + private const val EXPAND_AT_SIZE = 3 private const val SLIDE_OFFSET = 0 private const val ELEVATION = 90f }