mirror of
https://github.com/yattee/yattee.git
synced 2024-12-22 13:33:42 +00:00
Further subscribe buttons improvements
This commit is contained in:
parent
c14a4a153d
commit
70b55ec2b2
@ -12,6 +12,7 @@ struct VideoDetails: View {
|
|||||||
@Binding var fullScreen: Bool
|
@Binding var fullScreen: Bool
|
||||||
|
|
||||||
@State private var subscribed = false
|
@State private var subscribed = false
|
||||||
|
@State private var subscriptionToggleButtonDisabled = false
|
||||||
@State private var presentingUnsubscribeAlert = false
|
@State private var presentingUnsubscribeAlert = false
|
||||||
@State private var presentingAddToPlaylist = false
|
@State private var presentingAddToPlaylist = false
|
||||||
@State private var presentingShareSheet = false
|
@State private var presentingShareSheet = false
|
||||||
@ -254,10 +255,13 @@ struct VideoDetails: View {
|
|||||||
"Are you sure you want to unsubscribe from \(video!.channel.name)?"
|
"Are you sure you want to unsubscribe from \(video!.channel.name)?"
|
||||||
),
|
),
|
||||||
primaryButton: .destructive(Text("Unsubscribe")) {
|
primaryButton: .destructive(Text("Unsubscribe")) {
|
||||||
subscriptions.unsubscribe(video!.channel.id)
|
subscriptionToggleButtonDisabled = true
|
||||||
|
|
||||||
withAnimation {
|
subscriptions.unsubscribe(video!.channel.id) {
|
||||||
subscribed.toggle()
|
withAnimation {
|
||||||
|
subscriptionToggleButtonDisabled = false
|
||||||
|
subscribed.toggle()
|
||||||
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
secondaryButton: .cancel()
|
secondaryButton: .cancel()
|
||||||
@ -265,16 +269,20 @@ struct VideoDetails: View {
|
|||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
Button("Subscribe") {
|
Button("Subscribe") {
|
||||||
subscriptions.subscribe(video!.channel.id)
|
subscriptionToggleButtonDisabled = true
|
||||||
|
|
||||||
withAnimation {
|
subscriptions.subscribe(video!.channel.id) {
|
||||||
subscribed.toggle()
|
withAnimation {
|
||||||
|
subscriptionToggleButtonDisabled = false
|
||||||
|
subscribed.toggle()
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
.backport
|
.backport
|
||||||
.tint(.blue)
|
.tint(subscriptionToggleButtonDisabled ? .gray : .blue)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
.disabled(subscriptionToggleButtonDisabled)
|
||||||
.font(.system(size: 13))
|
.font(.system(size: 13))
|
||||||
.buttonStyle(.borderless)
|
.buttonStyle(.borderless)
|
||||||
}
|
}
|
||||||
|
@ -150,7 +150,7 @@ struct ChannelVideosView: View {
|
|||||||
subscriptionToggleButtonDisabled = true
|
subscriptionToggleButtonDisabled = true
|
||||||
|
|
||||||
subscriptions.unsubscribe(channel.id) {
|
subscriptions.unsubscribe(channel.id) {
|
||||||
self.subscriptionToggleButtonDisabled = false
|
subscriptionToggleButtonDisabled = false
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
|
Loading…
Reference in New Issue
Block a user