Skip to content

Commit ad1e231

Browse files
committed
Clean up the tab switcher adapter
1 parent 26dee3c commit ad1e231

File tree

1 file changed

+16
-16
lines changed

1 file changed

+16
-16
lines changed

app/src/main/java/com/duckduckgo/app/tabs/ui/TabSwitcherAdapter.kt

Lines changed: 16 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -133,11 +133,12 @@ class TabSwitcherAdapter(
133133

134134
private fun bindListTab(holder: TabSwitcherViewHolder.ListTabViewHolder, tab: TabEntity) {
135135
val context = holder.binding.root.context
136+
val glide = Glide.with(context)
136137
holder.title.text = extractTabTitle(tab, context)
137138
holder.url.text = tab.url ?: ""
138139
holder.url.visibility = if (tab.url.isNullOrEmpty()) View.GONE else View.VISIBLE
139140
updateUnreadIndicator(holder, tab)
140-
loadFavicon(tab, holder.favicon)
141+
loadFavicon(tab, glide, holder.favicon)
141142
attachTabClickListeners(
142143
tabViewHolder = holder,
143144
bindingAdapterPosition = { holder.bindingAdapterPosition },
@@ -150,8 +151,8 @@ class TabSwitcherAdapter(
150151
val glide = Glide.with(context)
151152
holder.title.text = extractTabTitle(tab, context)
152153
updateUnreadIndicator(holder, tab)
153-
loadFavicon(tab, holder.favicon)
154-
loadTabPreviewImage(tab, glide, holder)
154+
loadFavicon(tab, glide, holder.favicon)
155+
loadTabPreviewImage(tab, glide, holder.tabPreview)
155156
attachTabClickListeners(
156157
tabViewHolder = holder,
157158
bindingAdapterPosition = { holder.bindingAdapterPosition },
@@ -201,7 +202,7 @@ class TabSwitcherAdapter(
201202
}
202203

203204
if (bundle.containsKey(DIFF_KEY_PREVIEW)) {
204-
loadTabPreviewImage(tab.tabEntity, Glide.with(viewHolder.rootView), viewHolder)
205+
loadTabPreviewImage(tab.tabEntity, Glide.with(viewHolder.rootView), viewHolder.tabPreview)
205206
}
206207

207208
bundle.getString(DIFF_KEY_TITLE)?.let {
@@ -240,44 +241,43 @@ class TabSwitcherAdapter(
240241
}
241242
}
242243

243-
private fun loadFavicon(tab: TabEntity, view: ImageView) {
244+
private fun loadFavicon(tab: TabEntity, glide: RequestManager, view: ImageView) {
244245
if (tab.url == null) {
245-
Glide.with(view).load(AndroidR.drawable.ic_dax_icon).into(view)
246+
glide.load(AndroidR.drawable.ic_dax_icon).into(view)
246247
} else {
247248
lifecycleOwner.lifecycleScope.launch {
248249
faviconManager.loadToViewFromLocalWithPlaceholder(tab.tabId, tab.url!!, view)
249250
}
250251
}
251252
}
252253

253-
private fun loadTabPreviewImage(tab: TabEntity, glide: RequestManager, holder: TabSwitcherViewHolder.GridTabViewHolder) {
254+
private fun loadTabPreviewImage(tab: TabEntity, glide: RequestManager, tabPreview: ImageView) {
254255
if (tab.url == null) {
255-
holder.tabPreview.scaleType = ScaleType.CENTER
256-
Glide.with(holder.tabPreview)
257-
.load(AndroidR.drawable.ic_dax_icon_72)
258-
.into(holder.tabPreview)
256+
tabPreview.scaleType = ScaleType.CENTER
257+
glide.load(AndroidR.drawable.ic_dax_icon_72)
258+
.into(tabPreview)
259259
return
260260
} else {
261-
holder.tabPreview.scaleType = ScaleType.MATRIX
261+
tabPreview.scaleType = ScaleType.MATRIX
262262
}
263263

264-
val previewFile = tab.tabPreviewFile ?: return glide.clear(holder.tabPreview)
264+
val previewFile = tab.tabPreviewFile ?: return glide.clear(tabPreview)
265265

266266
lifecycleOwner.lifecycleScope.launch {
267267
val cachedWebViewPreview = withContext(dispatchers.io()) {
268268
File(webViewPreviewPersister.fullPathForFile(tab.tabId, previewFile)).takeIf { it.exists() }
269269
}
270270

271271
if (cachedWebViewPreview == null) {
272-
glide.clear(holder.tabPreview)
272+
glide.clear(tabPreview)
273273
return@launch
274274
}
275275

276276
glide.load(cachedWebViewPreview)
277277
.transition(DrawableTransitionOptions.withCrossFade())
278-
.into(holder.tabPreview)
278+
.into(tabPreview)
279279

280-
holder.tabPreview.show()
280+
tabPreview.show()
281281
}
282282
}
283283

0 commit comments

Comments
 (0)