Debrid: Don't show sheet on error

If a download link isn't set, don't show the choice sheet and present
the error instead.

Signed-off-by: kingbri <bdashore3@gmail.com>
This commit is contained in:
kingbri 2022-08-15 20:55:16 -04:00 committed by kingbri
parent a030cc8bf0
commit 3c6ce0bb94
3 changed files with 10 additions and 4 deletions

View file

@ -25,9 +25,11 @@ struct BatchChoiceView: View {
Task { Task {
await debridManager.fetchRdDownload(searchResult: searchResult, iaFile: file) await debridManager.fetchRdDownload(searchResult: searchResult, iaFile: file)
// The download may complete before this sheet dismisses if !debridManager.realDebridDownloadUrl.isEmpty {
try? await Task.sleep(seconds: 1) // The download may complete before this sheet dismisses
navModel.runDebridAction(action: nil, urlString: debridManager.realDebridDownloadUrl) try? await Task.sleep(seconds: 1)
navModel.runDebridAction(action: nil, urlString: debridManager.realDebridDownloadUrl)
}
debridManager.selectedRealDebridFile = nil debridManager.selectedRealDebridFile = nil
debridManager.selectedRealDebridItem = nil debridManager.selectedRealDebridItem = nil

View file

@ -51,6 +51,7 @@ struct MainView: View {
} }
} }
.font(.caption) .font(.caption)
.shadow(radius: 10)
.animation(.easeInOut(duration: 0.3), value: toastModel.showToast) .animation(.easeInOut(duration: 0.3), value: toastModel.showToast)
} }
} }

View file

@ -26,7 +26,10 @@ struct SearchResultsView: View {
case .full: case .full:
Task { Task {
await debridManager.fetchRdDownload(searchResult: result) await debridManager.fetchRdDownload(searchResult: result)
navModel.runDebridAction(action: nil, urlString: debridManager.realDebridDownloadUrl)
if !debridManager.realDebridDownloadUrl.isEmpty {
navModel.runDebridAction(action: nil, urlString: debridManager.realDebridDownloadUrl)
}
} }
case .partial: case .partial:
if debridManager.setSelectedRdResult(result: result) { if debridManager.setSelectedRdResult(result: result) {