MagnetChoiceView: Fix titles

Titles weren't cleared on sheet dismiss which caused conflicts between
batches and single files. Fix this.

Signed-off-by: kingbri <bdashore3@proton.me>
This commit is contained in:
kingbri 2022-12-14 16:33:18 -05:00
parent 04e4503c86
commit 47ef72bf13
4 changed files with 13 additions and 9 deletions

View file

@ -35,8 +35,8 @@ class NavigationViewModel: ObservableObject {
@Published var selectedSearchResult: SearchResult?
// For giving information in magnet choice sheet
@Published var selectedTitle: String?
@Published var selectedBatchTitle: String?
@Published var selectedTitle: String = ""
@Published var selectedBatchTitle: String = ""
@Published var hideNavigationBar = false

View file

@ -16,8 +16,8 @@ struct HistoryButtonView: View {
var body: some View {
Button {
navModel.selectedTitle = entry.name
navModel.selectedBatchTitle = entry.subName
navModel.selectedTitle = entry.name ?? ""
navModel.selectedBatchTitle = entry.subName ?? ""
if let url = entry.url {
if url.starts(with: "https://") {

View file

@ -23,7 +23,7 @@ struct SearchResultButtonView: View {
Button {
if debridManager.currentDebridTask == nil {
navModel.selectedSearchResult = result
navModel.selectedTitle = result.title
navModel.selectedTitle = result.title ?? ""
switch debridManager.matchSearchResult(result: result) {
case .full:

View file

@ -25,12 +25,12 @@ struct MagnetChoiceView: View {
Form {
Section(header: "Now Playing") {
VStack(alignment: .leading, spacing: 5) {
Text(navModel.selectedTitle ?? "No title")
Text(navModel.selectedTitle)
.font(.callout)
.lineLimit(navModel.selectedBatchTitle == nil ? .max : 1)
.lineLimit(navModel.selectedBatchTitle.isEmpty ? .max : 1)
if let batchTitle = navModel.selectedBatchTitle {
Text(batchTitle)
if !navModel.selectedBatchTitle.isEmpty {
Text(navModel.selectedBatchTitle)
.foregroundColor(.gray)
.font(.subheadline)
}
@ -109,6 +109,8 @@ struct MagnetChoiceView: View {
}
.onDisappear {
debridManager.downloadUrl = ""
navModel.selectedTitle = ""
navModel.selectedBatchTitle = ""
}
.navigationTitle("Link actions")
.navigationBarTitleDisplayMode(.inline)
@ -116,6 +118,8 @@ struct MagnetChoiceView: View {
ToolbarItem(placement: .navigationBarTrailing) {
Button("Done") {
debridManager.downloadUrl = ""
navModel.selectedTitle = ""
navModel.selectedBatchTitle = ""
presentationMode.wrappedValue.dismiss()
}