Layout and PiP improvements, new settings

- player is now a separate window on macOS
- add setting to disable pause when player is closed (fixes #40)
- add PiP settings:
  * Close PiP when starting playing other video
  * Close PiP when player is opened
  * Close PiP and open player when application
    enters foreground (iOS/tvOS) (fixes #37)
- new player placeholder when in PiP, context menu with exit option
This commit is contained in:
Arkadiusz Fal
2021-12-19 18:17:04 +01:00
parent cef0b2594a
commit 61a4951831
25 changed files with 443 additions and 94 deletions

View File

@@ -33,7 +33,7 @@ struct NowPlayingView: View {
if sections.contains(.nowPlaying), let item = player.currentItem {
Section(header: Text("Now Playing")) {
Button {
player.presentPlayer()
player.show()
} label: {
VideoBanner(video: item.video)
}
@@ -59,7 +59,7 @@ struct NowPlayingView: View {
ForEach(player.queue) { item in
Button {
player.advanceToItem(item)
player.presentPlayer()
player.show()
} label: {
VideoBanner(video: item.video)
}
@@ -77,7 +77,7 @@ struct NowPlayingView: View {
ForEach(player.currentVideo!.related) { video in
Button {
player.playNow(video)
player.presentPlayer()
player.show()
} label: {
VideoBanner(video: video)
}
@@ -99,7 +99,7 @@ struct NowPlayingView: View {
ForEach(player.history) { item in
Button {
player.playHistory(item)
player.presentPlayer()
player.show()
} label: {
VideoBanner(video: item.video, playbackTime: item.playbackTime, videoDuration: item.videoDuration)
}