Issue #19002: Correct naming of pager viewholders

upstream-sync
Jonathan Almeida 3 years ago committed by Jonathan Almeida
parent a95a26b2c6
commit f0d352f47e

@ -16,10 +16,10 @@ import org.mozilla.fenix.sync.SyncedTabsAdapter
import org.mozilla.fenix.tabstray.browser.BrowserTabsAdapter
import org.mozilla.fenix.tabstray.browser.BrowserTrayInteractor
import org.mozilla.fenix.tabstray.syncedtabs.TabClickDelegate
import org.mozilla.fenix.tabstray.viewholders.AbstractTrayViewHolder
import org.mozilla.fenix.tabstray.viewholders.NormalBrowserTabViewHolder
import org.mozilla.fenix.tabstray.viewholders.PrivateBrowserTabViewHolder
import org.mozilla.fenix.tabstray.viewholders.SyncedTabViewHolder
import org.mozilla.fenix.tabstray.viewholders.AbstractPageViewHolder
import org.mozilla.fenix.tabstray.viewholders.NormalBrowserPageViewHolder
import org.mozilla.fenix.tabstray.viewholders.PrivateBrowserPageViewHolder
import org.mozilla.fenix.tabstray.viewholders.SyncedTabsPageViewHolder
class TrayPagerAdapter(
private val context: Context,
@ -28,36 +28,36 @@ class TrayPagerAdapter(
private val navInteractor: NavigationInteractor,
private val interactor: TabsTrayInteractor,
private val browserStore: BrowserStore
) : RecyclerView.Adapter<AbstractTrayViewHolder>() {
) : RecyclerView.Adapter<AbstractPageViewHolder>() {
private val normalAdapter by lazy { BrowserTabsAdapter(context, browserInteractor, store) }
private val privateAdapter by lazy { BrowserTabsAdapter(context, browserInteractor, store) }
private val syncedTabsAdapter by lazy { SyncedTabsAdapter(TabClickDelegate(navInteractor)) }
override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): AbstractTrayViewHolder {
override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): AbstractPageViewHolder {
val itemView = LayoutInflater.from(parent.context).inflate(viewType, parent, false)
val selectedTab = browserStore.state.selectedTab
return when (viewType) {
NormalBrowserTabViewHolder.LAYOUT_ID -> {
NormalBrowserTabViewHolder(
NormalBrowserPageViewHolder.LAYOUT_ID -> {
NormalBrowserPageViewHolder(
itemView,
store,
interactor,
browserStore.state.normalTabs.indexOf(selectedTab)
)
}
PrivateBrowserTabViewHolder.LAYOUT_ID -> {
PrivateBrowserTabViewHolder(
PrivateBrowserPageViewHolder.LAYOUT_ID -> {
PrivateBrowserPageViewHolder(
itemView,
store,
interactor,
browserStore.state.privateTabs.indexOf(selectedTab)
)
}
SyncedTabViewHolder.LAYOUT_ID -> {
SyncedTabViewHolder(
SyncedTabsPageViewHolder.LAYOUT_ID -> {
SyncedTabsPageViewHolder(
itemView,
store
)
@ -66,7 +66,7 @@ class TrayPagerAdapter(
}
}
override fun onBindViewHolder(viewHolder: AbstractTrayViewHolder, position: Int) {
override fun onBindViewHolder(viewHolder: AbstractPageViewHolder, position: Int) {
val adapter = when (position) {
POSITION_NORMAL_TABS -> normalAdapter
POSITION_PRIVATE_TABS -> privateAdapter
@ -78,9 +78,9 @@ class TrayPagerAdapter(
override fun getItemViewType(position: Int): Int {
return when (position) {
POSITION_NORMAL_TABS -> NormalBrowserTabViewHolder.LAYOUT_ID
POSITION_PRIVATE_TABS -> PrivateBrowserTabViewHolder.LAYOUT_ID
POSITION_SYNCED_TABS -> SyncedTabViewHolder.LAYOUT_ID
POSITION_NORMAL_TABS -> NormalBrowserPageViewHolder.LAYOUT_ID
POSITION_PRIVATE_TABS -> PrivateBrowserPageViewHolder.LAYOUT_ID
POSITION_SYNCED_TABS -> SyncedTabsPageViewHolder.LAYOUT_ID
else -> throw IllegalStateException("Unknown position.")
}
}

@ -18,12 +18,12 @@ import org.mozilla.fenix.tabstray.browser.BrowserTrayList
/**
* A shared view holder for browser tabs tray list.
*/
abstract class BaseBrowserTabViewHolder(
abstract class AbstractBrowserPageViewHolder(
containerView: View,
tabsTrayStore: TabsTrayStore,
interactor: TabsTrayInteractor,
private val currentTabIndex: Int
) : AbstractTrayViewHolder(containerView) {
) : AbstractPageViewHolder(containerView) {
protected val trayList: BrowserTrayList = itemView.findViewById(R.id.tray_list_item)
private val emptyList: TextView = itemView.findViewById(R.id.tab_tray_empty_view)

@ -12,7 +12,7 @@ import org.mozilla.fenix.tabstray.TrayPagerAdapter
/**
* An abstract [RecyclerView.ViewHolder] for [TrayPagerAdapter] items.
*/
abstract class AbstractTrayViewHolder constructor(
abstract class AbstractPageViewHolder constructor(
override val containerView: View
) : RecyclerView.ViewHolder(containerView), LayoutContainer {

@ -17,12 +17,12 @@ import org.mozilla.fenix.tabstray.browser.BrowserTabsAdapter
/**
* View holder for the normal tabs tray list.
*/
class NormalBrowserTabViewHolder(
class NormalBrowserPageViewHolder(
containerView: View,
private val store: TabsTrayStore,
interactor: TabsTrayInteractor,
currentTabIndex: Int
) : BaseBrowserTabViewHolder(
) : AbstractBrowserPageViewHolder(
containerView,
store,
interactor,

@ -13,12 +13,12 @@ import org.mozilla.fenix.tabstray.browser.BrowserTrayList.BrowserTabType.PRIVATE
/**
* View holder for the private tabs tray list.
*/
class PrivateBrowserTabViewHolder(
class PrivateBrowserPageViewHolder(
containerView: View,
store: TabsTrayStore,
interactor: TabsTrayInteractor,
currentTabIndex: Int
) : BaseBrowserTabViewHolder(
) : AbstractBrowserPageViewHolder(
containerView,
store,
interactor,

@ -10,10 +10,10 @@ import kotlinx.android.synthetic.main.component_sync_tabs_tray_layout.*
import org.mozilla.fenix.R
import org.mozilla.fenix.tabstray.TabsTrayStore
class SyncedTabViewHolder(
class SyncedTabsPageViewHolder(
containerView: View,
private val tabsTrayStore: TabsTrayStore
) : AbstractTrayViewHolder(containerView) {
) : AbstractPageViewHolder(containerView) {
override fun bind(
adapter: RecyclerView.Adapter<out RecyclerView.ViewHolder>,

@ -15,7 +15,7 @@ import org.junit.Assert.assertEquals
import org.junit.Test
import org.junit.runner.RunWith
import org.mozilla.fenix.helpers.FenixRobolectricTestRunner
import org.mozilla.fenix.tabstray.viewholders.SyncedTabViewHolder
import org.mozilla.fenix.tabstray.viewholders.SyncedTabsPageViewHolder
@RunWith(FenixRobolectricTestRunner::class)
class TabsTouchHelperTest {
@ -24,7 +24,7 @@ class TabsTouchHelperTest {
fun `movement flags remain unchanged if onSwipeToDelete is true`() {
val recyclerView = RecyclerView(testContext)
val layout = FrameLayout(testContext)
val viewHolder = SyncedTabViewHolder(layout, mockk())
val viewHolder = SyncedTabsPageViewHolder(layout, mockk())
val callback = TouchCallback(mockk(), { true }, mockk())
assertEquals(0, callback.getDragDirs(recyclerView, viewHolder))
@ -43,7 +43,7 @@ class TabsTouchHelperTest {
fun `movement flags remain unchanged if onSwipeToDelete is false`() {
val recyclerView = RecyclerView(testContext)
val layout = FrameLayout(testContext)
val viewHolder = SyncedTabViewHolder(layout, mockk())
val viewHolder = SyncedTabsPageViewHolder(layout, mockk())
val callback = TouchCallback(mockk(), { false }, mockk())
assertEquals(0, callback.getDragDirs(recyclerView, viewHolder))

@ -25,7 +25,7 @@ import org.mozilla.fenix.tabstray.browser.BrowserTrayInteractor
import org.mozilla.fenix.tabstray.browser.createTab
@RunWith(FenixRobolectricTestRunner::class)
class BaseBrowserTabViewHolderTest {
class AbstractBrowserPageViewHolderTest {
val store: TabsTrayStore = TabsTrayStore()
val interactor = mockk<TabsTrayInteractor>(relaxed = true)
val browserTrayInteractor = mockk<BrowserTrayInteractor>(relaxed = true)
@ -35,7 +35,7 @@ class BaseBrowserTabViewHolderTest {
fun `WHEN tabs inserted THEN show tray`() {
val itemView =
LayoutInflater.from(testContext).inflate(R.layout.normal_browser_tray_list, null)
val viewHolder = NormalBrowserTabViewHolder(itemView, store, interactor, 5)
val viewHolder = NormalBrowserPageViewHolder(itemView, store, interactor, 5)
val trayList: BrowserTrayList = itemView.findViewById(R.id.tray_list_item)
val emptyList: TextView = itemView.findViewById(R.id.tab_tray_empty_view)
@ -59,7 +59,7 @@ class BaseBrowserTabViewHolderTest {
fun `WHEN no tabs THEN show empty view`() {
val itemView =
LayoutInflater.from(testContext).inflate(R.layout.normal_browser_tray_list, null)
val viewHolder = NormalBrowserTabViewHolder(itemView, store, interactor, 5)
val viewHolder = NormalBrowserPageViewHolder(itemView, store, interactor, 5)
val trayList: BrowserTrayList = itemView.findViewById(R.id.tray_list_item)
val emptyList: TextView = itemView.findViewById(R.id.tab_tray_empty_view)
Loading…
Cancel
Save