mirror of
https://github.com/yattee/yattee.git
synced 2024-12-15 06:40:32 +05:30
Improve PiP close animation
This commit is contained in:
parent
e50a14b13a
commit
91721a3506
@ -1,5 +1,6 @@
|
|||||||
import AVKit
|
import AVKit
|
||||||
import Foundation
|
import Foundation
|
||||||
|
import SwiftUI
|
||||||
|
|
||||||
final class PiPDelegate: NSObject, AVPictureInPictureControllerDelegate {
|
final class PiPDelegate: NSObject, AVPictureInPictureControllerDelegate {
|
||||||
var player: PlayerModel!
|
var player: PlayerModel!
|
||||||
@ -45,16 +46,23 @@ final class PiPDelegate: NSObject, AVPictureInPictureControllerDelegate {
|
|||||||
) {
|
) {
|
||||||
var delay = 0.0
|
var delay = 0.0
|
||||||
#if os(iOS)
|
#if os(iOS)
|
||||||
if player.currentItem.isNil {
|
if !player.presentingPlayer {
|
||||||
delay = 0.5
|
delay = 0.5
|
||||||
}
|
}
|
||||||
|
if player.currentItem.isNil {
|
||||||
|
delay = 1
|
||||||
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
if !player.currentItem.isNil, !player.musicMode {
|
if !player.currentItem.isNil, !player.musicMode {
|
||||||
player?.show()
|
player?.show()
|
||||||
}
|
}
|
||||||
|
|
||||||
DispatchQueue.main.asyncAfter(deadline: .now() + delay) {
|
DispatchQueue.main.asyncAfter(deadline: .now() + delay) { [weak self] in
|
||||||
|
withAnimation(.linear(duration: 0.3)) {
|
||||||
|
self?.player.playingInPictureInPicture = false
|
||||||
|
}
|
||||||
|
|
||||||
completionHandler(true)
|
completionHandler(true)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user