From e9df94256c2169c597ac3624bce26907d2fd4952 Mon Sep 17 00:00:00 2001 From: Arkadiusz Fal Date: Mon, 29 Aug 2022 17:58:40 +0200 Subject: [PATCH] Fix gesture state --- Shared/Player/PlayerDragGesture.swift | 2 +- Shared/Player/VideoPlayerView.swift | 4 ++++ 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/Shared/Player/PlayerDragGesture.swift b/Shared/Player/PlayerDragGesture.swift index 43419915..c7bf9934 100644 --- a/Shared/Player/PlayerDragGesture.swift +++ b/Shared/Player/PlayerDragGesture.swift @@ -74,7 +74,7 @@ extension VideoPlayerView { } } - private func onPlayerDragGestureEnded() { + func onPlayerDragGestureEnded() { if horizontalPlayerGestureEnabled, isHorizontalDrag { isHorizontalDrag = false player.seek.onSeekGestureEnd() diff --git a/Shared/Player/VideoPlayerView.swift b/Shared/Player/VideoPlayerView.swift index 8fe65332..db20330f 100644 --- a/Shared/Player/VideoPlayerView.swift +++ b/Shared/Player/VideoPlayerView.swift @@ -166,6 +166,10 @@ struct VideoPlayerView: View { #endif } #if os(iOS) + .onChange(of: dragGestureState) { newValue in + guard !newValue else { return } + onPlayerDragGestureEnded() + } .offset(y: playerOffset) .animation(dragGestureState ? .interactiveSpring(response: 0.05) : .easeOut(duration: 0.2), value: playerOffset) .backport