For those having to deal with that bug and in need to get location for the tap, I've used the answer here https://stackoverflow.com/questions/56513942/how-to-detect-a-tap-gesture-location-in-swiftui with a slight modification : import SwiftUI struct ClickGesture: Gesture { let count: Int let coordinateSpace: CoordinateSpace typealias Value = SimultaneousGesture.Value init(count: Int = 1, coordinateSpace: CoordinateSpace = .local) { precondition(count > 0, Count must be greater than or equal to 1.) self.count = count self.coordinateSpace = coordinateSpace } var body: SimultaneousGesture { SimultaneousGesture( TapGesture(count: count), DragGesture(minimumDistance: 0, coordinateSpace: coordinateSpace) ) } func onEnded(perform action: @escaping (CGPoint) -> Void) -> _EndedGesture { self.onEnded { (value: Value) -> Void in guard value.first != nil else { return } guard let location = value.second?.startLocation else { return } guard let endLocation = value.second?.location else { retu
Topic:
UI Frameworks
SubTopic:
SwiftUI
Tags: