For #23256: Close quick settings sheet when displaying clear dialog.
This commit is contained in:
parent
0496249fe4
commit
305b527b05
|
@ -14,6 +14,7 @@ import androidx.appcompat.app.AlertDialog
|
|||
import androidx.core.net.toUri
|
||||
import androidx.core.text.HtmlCompat
|
||||
import androidx.core.view.isVisible
|
||||
import androidx.navigation.NavController
|
||||
import kotlinx.coroutines.CoroutineScope
|
||||
import kotlinx.coroutines.Dispatchers
|
||||
import kotlinx.coroutines.launch
|
||||
|
@ -44,7 +45,8 @@ class ClearSiteDataView(
|
|||
private val ioScope: CoroutineScope,
|
||||
val containerView: ViewGroup,
|
||||
val containerDivider: View,
|
||||
val interactor: ClearSiteDataViewInteractor
|
||||
val interactor: ClearSiteDataViewInteractor,
|
||||
val navController: NavController
|
||||
) {
|
||||
|
||||
@VisibleForTesting(otherwise = VisibleForTesting.PRIVATE)
|
||||
|
@ -67,6 +69,7 @@ class ClearSiteDataView(
|
|||
setVisibility(true)
|
||||
binding.clearSiteData.setOnClickListener {
|
||||
askToClear()
|
||||
navController.popBackStack()
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -248,7 +248,6 @@ class DefaultQuickSettingsController(
|
|||
Engine.BrowsingData.ALL_SITE_DATA,
|
||||
),
|
||||
)
|
||||
navController.popBackStack()
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
@ -6,10 +6,11 @@ package org.mozilla.fenix.settings.quicksettings
|
|||
|
||||
import android.view.View
|
||||
import android.widget.FrameLayout
|
||||
import androidx.navigation.NavController
|
||||
import io.mockk.MockKAnnotations
|
||||
import io.mockk.mockk
|
||||
import io.mockk.spyk
|
||||
import io.mockk.verify
|
||||
import io.mockk.verifyOrder
|
||||
import kotlinx.coroutines.test.TestCoroutineScope
|
||||
import mozilla.components.support.test.robolectric.testContext
|
||||
import org.junit.Before
|
||||
|
@ -23,19 +24,22 @@ class ClearSiteDataViewTest {
|
|||
private lateinit var view: ClearSiteDataView
|
||||
private lateinit var binding: QuicksettingsClearSiteDataBinding
|
||||
private lateinit var interactor: ClearSiteDataViewInteractor
|
||||
private lateinit var navController: NavController
|
||||
private val coroutinesScope = TestCoroutineScope()
|
||||
|
||||
@Before
|
||||
fun setup() {
|
||||
MockKAnnotations.init(this)
|
||||
interactor = mockk(relaxed = true)
|
||||
navController = mockk(relaxed = true)
|
||||
view = spyk(
|
||||
ClearSiteDataView(
|
||||
testContext,
|
||||
coroutinesScope,
|
||||
FrameLayout(testContext),
|
||||
View(testContext),
|
||||
interactor
|
||||
interactor,
|
||||
navController
|
||||
)
|
||||
)
|
||||
binding = view.binding
|
||||
|
@ -54,6 +58,9 @@ class ClearSiteDataViewTest {
|
|||
|
||||
binding.clearSiteData.callOnClick()
|
||||
|
||||
verify { view.askToClear() }
|
||||
verifyOrder {
|
||||
view.askToClear()
|
||||
navController.popBackStack()
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue