Add setting "Close player when closing video"

This commit is contained in:
Arkadiusz Fal
2022-08-07 13:15:27 +02:00
parent d0e3839040
commit 8e2c30bf00
6 changed files with 26 additions and 15 deletions

View File

@@ -23,6 +23,10 @@ struct PlayerControls: View {
@FocusState private var focusedField: Field?
#endif
#if !os(macOS)
@Default(.closePlayerOnItemClose) private var closePlayerOnItemClose
#endif
init(player: PlayerModel, thumbnails: ThumbnailsModel) {
self.player = player
self.thumbnails = thumbnails
@@ -242,18 +246,7 @@ struct PlayerControls: View {
private var closeVideoButton: some View {
button("Close", systemImage: "xmark") {
player.pause()
player.hide()
player.closePiP()
var delay = 0.2
#if os(macOS)
delay = 0.0
#endif
DispatchQueue.main.asyncAfter(deadline: .now() + delay) {
player.closeCurrentItem()
}
player.closeCurrentItem()
}
}

View File

@@ -299,7 +299,7 @@ struct VideoPlayerView: View {
@ViewBuilder var playerPlaceholder: some View {
if player.currentItem.isNil {
ZStack(alignment: .topLeading) {
ZStack(alignment: .topTrailing) {
HStack {
Spacer()
VStack {