don't allow user to add download when link is in loading state

This commit is contained in:
AmirHossein Abdolmotallebi 2024-08-16 03:15:59 +03:30
parent d51d63db4c
commit efe381d555

View File

@ -81,9 +81,17 @@ class AddSingleDownloadComponent(
val canAddResult = downloadChecker.canAddToDownloadResult.asStateFlow()
private val canAdd = downloadChecker.canAdd
private val isDuplicate = downloadChecker.isDuplicate
val isLinkLoading = downloadChecker.gettingResponseInfo
val linkResponseInfo = downloadChecker.responseInfo
val canAddToDownloads = combineStateFlows(
canAdd, isDuplicate, onDuplicateStrategy
) { canAdd, isDuplicate, onDuplicateStrategy ->
canAdd, isDuplicate, onDuplicateStrategy, isLinkLoading
) { canAdd, isDuplicate, onDuplicateStrategy, isLinkLoading ->
if (isLinkLoading){
// link is loading wait for it...
return@combineStateFlows false
}
if (canAdd) {
true
} else if (isDuplicate && onDuplicateStrategy != null) {
@ -93,9 +101,6 @@ class AddSingleDownloadComponent(
}
}
val isLinkLoading = downloadChecker.gettingResponseInfo
val linkResponseInfo = downloadChecker.responseInfo
//extra settings
private var threadCount = MutableStateFlow(null as Int?)
private var speedLimit = MutableStateFlow(0L)