Close overlay with tap outside

This commit is contained in:
Arkadiusz Fal
2022-07-05 19:21:01 +02:00
parent e56ab3804e
commit 17aeef9af7
2 changed files with 30 additions and 5 deletions

View File

@@ -10,7 +10,15 @@ struct PlayerGestures: View {
.tapRecognizer(
tapSensitivity: 0.2,
singleTapAction: {
model.toggle()
if model.presentingControlsOverlay {
model.presentingControls = true
model.resetTimer()
withAnimation {
model.presentingControlsOverlay = false
}
} else {
model.toggle()
}
},
doubleTapAction: {
player.backend.seek(relative: .secondsInDefaultTimescale(-10))
@@ -24,7 +32,15 @@ struct PlayerGestures: View {
.tapRecognizer(
tapSensitivity: 0.2,
singleTapAction: {
model.toggle()
if model.presentingControlsOverlay {
model.presentingControls = true
model.resetTimer()
withAnimation {
model.presentingControlsOverlay = false
}
} else {
model.toggle()
}
},
doubleTapAction: {
player.backend.togglePlay()
@@ -38,7 +54,15 @@ struct PlayerGestures: View {
.tapRecognizer(
tapSensitivity: 0.2,
singleTapAction: {
model.toggle()
if model.presentingControlsOverlay {
model.presentingControls = true
model.resetTimer()
withAnimation {
model.presentingControlsOverlay = false
}
} else {
model.toggle()
}
},
doubleTapAction: {
player.backend.seek(relative: .secondsInDefaultTimescale(10))