1
0
Fork 0

Fixes #4987: Remove close tabs functionality when they are added to a collection

master
ValentinTimisica 2020-03-25 16:38:42 +02:00
parent a72d50d78f
commit 69e8a2f357
1 changed files with 0 additions and 13 deletions

View File

@ -13,7 +13,6 @@ import kotlinx.coroutines.launch
import mozilla.components.browser.session.SessionManager
import mozilla.components.feature.tab.collections.TabCollection
import mozilla.components.feature.tabs.TabsUseCases
import org.mozilla.fenix.R
import org.mozilla.fenix.components.Analytics
import org.mozilla.fenix.components.TabCollectionStorage
import org.mozilla.fenix.components.metrics.Event
@ -86,8 +85,6 @@ class DefaultCollectionCreationController(
analytics.metrics.track(
Event.CollectionSaved(normalSessionSize(sessionManager), sessionBundle.size)
)
closeTabsIfNecessary(tabs, sessionManager, tabsUseCases)
}
override fun renameCollection(collection: TabCollection, name: String) {
@ -125,8 +122,6 @@ class DefaultCollectionCreationController(
analytics.metrics.track(
Event.CollectionTabsAdded(normalSessionSize(sessionManager), sessionBundle.size)
)
closeTabsIfNecessary(tabs, sessionManager, tabsUseCases)
}
override fun saveTabsToCollection(tabs: List<Tab>) {
@ -220,12 +215,4 @@ class DefaultCollectionCreationController(
(!session.isCustomTabSession() && !session.private)
}.size
}
private fun closeTabsIfNecessary(tabs: List<Tab>, sessionManager: SessionManager, tabsUseCases: TabsUseCases) {
// Only close the tabs if the user is not on the BrowserFragment
if (store.state.previousFragmentId == R.id.browserFragment) { return }
tabs.asSequence()
.mapNotNull { tab -> sessionManager.findSessionById(tab.sessionId) }
.forEach { session -> tabsUseCases.removeTab(session) }
}
}