diff options
Diffstat (limited to 'Sources')
-rw-r--r-- | Sources/SwiftyCrop/Models/SwiftyCropConfiguration.swift | 6 | ||||
-rw-r--r-- | Sources/SwiftyCrop/View/CropView.swift | 2 |
2 files changed, 6 insertions, 2 deletions
diff --git a/Sources/SwiftyCrop/Models/SwiftyCropConfiguration.swift b/Sources/SwiftyCrop/Models/SwiftyCropConfiguration.swift index 8cda96c..3a3e06a 100644 --- a/Sources/SwiftyCrop/Models/SwiftyCropConfiguration.swift +++ b/Sources/SwiftyCrop/Models/SwiftyCropConfiguration.swift @@ -6,6 +6,7 @@ public struct SwiftyCropConfiguration { public let maskRadius: CGFloat public let cropImageCircular: Bool public let rotateImage: Bool + public let zoomSensitivity: CGFloat /// Creates a new instance of `SwiftyCropConfiguration`. /// @@ -18,15 +19,18 @@ public struct SwiftyCropConfiguration { /// Defaults to `false`. /// - rotateImage: Option to rotate image. /// Defaults to `true`. + /// - zoomSensitivity: Sensitivity when zooming. Default is `1.0`. Decrease to increase sensitivity. public init( maxMagnificationScale: CGFloat = 4.0, maskRadius: CGFloat = 130, cropImageCircular: Bool = false, - rotateImage: Bool = true + rotateImage: Bool = true, + zoomSensitivity: CGFloat = 1 ) { self.maxMagnificationScale = maxMagnificationScale self.maskRadius = maskRadius self.cropImageCircular = cropImageCircular self.rotateImage = rotateImage + self.zoomSensitivity = zoomSensitivity } } diff --git a/Sources/SwiftyCrop/View/CropView.swift b/Sources/SwiftyCrop/View/CropView.swift index a61aa47..b8ca961 100644 --- a/Sources/SwiftyCrop/View/CropView.swift +++ b/Sources/SwiftyCrop/View/CropView.swift @@ -32,7 +32,7 @@ struct CropView: View { var body: some View { let magnificationGesture = MagnificationGesture() .onChanged { value in - let sensitivity: CGFloat = 0.2 + let sensitivity: CGFloat = 0.1 * configuration.zoomSensitivity let scaledValue = (value.magnitude - 1) * sensitivity + 1 let maxScaleValues = viewModel.calculateMagnificationGestureMaxValues() |