Fix Video Player Overlay (#774)

This commit is contained in:
Ethan Pippin 2023-05-16 16:03:26 -06:00 committed by GitHub
parent ffff3c3ce7
commit a58b3f0b88
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 11 additions and 23 deletions

View File

@ -33,9 +33,6 @@ final class VideoPlayerCoordinator: NavigationCoordinatable {
Group {
if Defaults[.VideoPlayer.videoPlayerType] == .swiftfin {
VideoPlayer(manager: self.videoPlayerManager)
.overlay {
VideoPlayer.Overlay()
}
} else {
NativeVideoPlayer(manager: self.videoPlayerManager)
}

View File

@ -101,7 +101,6 @@ struct VideoPlayer: View {
private let gestureStateHandler: GestureStateHandler = .init()
private let updateViewProxy: UpdateViewProxy = .init()
private var overlay: () -> any View
@ViewBuilder
private var playerView: some View {
@ -155,19 +154,16 @@ struct VideoPlayer: View {
}
}
Group {
overlay()
.eraseToAnyView()
}
.environmentObject(splitContentViewProxy)
.environmentObject(videoPlayerManager)
.environmentObject(videoPlayerManager.currentProgressHandler)
.environmentObject(videoPlayerManager.currentViewModel!)
.environmentObject(videoPlayerManager.proxy)
.environment(\.aspectFilled, $isAspectFilled)
.environment(\.isPresentingOverlay, $isPresentingOverlay)
.environment(\.isScrubbing, $isScrubbing)
.environment(\.playbackSpeed, $playbackSpeed)
VideoPlayer.Overlay()
.environmentObject(splitContentViewProxy)
.environmentObject(videoPlayerManager)
.environmentObject(videoPlayerManager.currentProgressHandler)
.environmentObject(videoPlayerManager.currentViewModel!)
.environmentObject(videoPlayerManager.proxy)
.environment(\.aspectFilled, $isAspectFilled)
.environment(\.isPresentingOverlay, $isPresentingOverlay)
.environment(\.isScrubbing, $isScrubbing)
.environment(\.playbackSpeed, $playbackSpeed)
}
}
.splitContent {
@ -253,14 +249,9 @@ extension VideoPlayer {
init(manager: VideoPlayerManager) {
self.init(
currentProgressHandler: manager.currentProgressHandler,
videoPlayerManager: manager,
overlay: { EmptyView() }
videoPlayerManager: manager
)
}
func overlay(@ViewBuilder _ content: @escaping () -> any View) -> Self {
copy(modifying: \.overlay, with: content)
}
}
// MARK: Gestures