[fenix] Bug 1815424 - Show Dialog should not be called multiple times.

pull/600/head
iorgamgabriel 2 years ago committed by mergify[bot]
parent 13522ca859
commit b232ce3650

@ -520,28 +520,37 @@ abstract class BaseBrowserFragment :
requestPermissions(permissions, REQUEST_CODE_DOWNLOAD_PERMISSIONS)
},
customFirstPartyDownloadDialog = { filename, contentSize, positiveAction, negativeAction ->
FirstPartyDownloadDialog(
activity = requireActivity(),
filename = filename.value,
contentSize = contentSize.value,
positiveButtonAction = positiveAction.value,
negativeButtonAction = negativeAction.value,
).onDismiss {
currentStartDownloadDialog = null
}.show(binding.startDownloadDialogContainer).also {
currentStartDownloadDialog = it
run {
if (currentStartDownloadDialog == null) {
FirstPartyDownloadDialog(
activity = requireActivity(),
filename = filename.value,
contentSize = contentSize.value,
positiveButtonAction = positiveAction.value,
negativeButtonAction = negativeAction.value,
).onDismiss {
currentStartDownloadDialog = null
}.show(binding.startDownloadDialogContainer)
.also {
currentStartDownloadDialog = it
}
}
}
},
customThirdPartyDownloadDialog = { downloaderApps, onAppSelected, negativeActionCallback ->
ThirdPartyDownloadDialog(
activity = requireActivity(),
downloaderApps = downloaderApps.value,
onAppSelected = onAppSelected.value,
negativeButtonAction = negativeActionCallback.value,
).onDismiss {
currentStartDownloadDialog = null
}.show(binding.startDownloadDialogContainer).also {
currentStartDownloadDialog = it
run {
if (currentStartDownloadDialog == null) {
ThirdPartyDownloadDialog(
activity = requireActivity(),
downloaderApps = downloaderApps.value,
onAppSelected = onAppSelected.value,
negativeButtonAction = negativeActionCallback.value,
).onDismiss {
currentStartDownloadDialog = null
}.show(binding.startDownloadDialogContainer).also {
currentStartDownloadDialog = it
}
}
}
},
)

Loading…
Cancel
Save