1
0
Fork 0

For #2823 - Invoke pending jobs with context on switch to private mode

master
Emily Kager 2019-05-28 11:06:07 -07:00 committed by Jeff Boek
parent 69c4850789
commit 250548a72f
1 changed files with 5 additions and 2 deletions

View File

@ -199,6 +199,7 @@ class HomeFragment : Fragment(), CoroutineScope, AccountObserver {
contentDescriptionForPrivateBrowsingButton(isPrivate) contentDescriptionForPrivateBrowsingButton(isPrivate)
privateBrowsingButton.setOnClickListener { privateBrowsingButton.setOnClickListener {
invokePendingDeleteJobs()
val browsingModeManager = (activity as HomeActivity).browsingModeManager val browsingModeManager = (activity as HomeActivity).browsingModeManager
val newMode = when (browsingModeManager.mode) { val newMode = when (browsingModeManager.mode) {
BrowsingModeManager.Mode.Normal -> BrowsingModeManager.Mode.Private BrowsingModeManager.Mode.Normal -> BrowsingModeManager.Mode.Private
@ -547,9 +548,11 @@ class HomeFragment : Fragment(), CoroutineScope, AccountObserver {
} }
private fun removeAllTabsWithUndo(isPrivate: Boolean) { private fun removeAllTabsWithUndo(isPrivate: Boolean) {
val useCases = requireComponents.useCases.tabsUseCases
getManagedEmitter<SessionControlChange>().onNext(SessionControlChange.TabsChange(listOf())) getManagedEmitter<SessionControlChange>().onNext(SessionControlChange.TabsChange(listOf()))
deleteAllSessionsJob = { deleteAllSessionsJob = {
requireComponents.useCases.tabsUseCases.removeAllTabsOfType.invoke(isPrivate) useCases.removeAllTabsOfType.invoke(isPrivate)
} }
CoroutineScope(Dispatchers.Main).allowUndo( CoroutineScope(Dispatchers.Main).allowUndo(
@ -559,7 +562,7 @@ class HomeFragment : Fragment(), CoroutineScope, AccountObserver {
emitSessionChanges() emitSessionChanges()
} }
) { ) {
requireComponents.useCases.tabsUseCases.removeAllTabsOfType.invoke(isPrivate) useCases.removeAllTabsOfType.invoke(isPrivate)
} }
} }