Signal-iOS/SignalUI/Categories/UIKit+SignalUI.swift
2022-12-06 15:44:36 -08:00

27 lines
702 B
Swift

//
// Copyright 2022 Signal Messenger, LLC
// SPDX-License-Identifier: AGPL-3.0-only
//
import UIKit
public extension UIViewPropertyAnimator {
convenience init (
duration: TimeInterval,
springDamping: CGFloat,
springResponse: CGFloat
) {
let stiffness = pow(2 * .pi / springResponse, 2)
let damping = 4 * .pi * springDamping / springResponse
let timingParameters = UISpringTimingParameters(
mass: 1,
stiffness: stiffness,
damping: damping,
initialVelocity: .zero
)
self.init(duration: duration, timingParameters: timingParameters)
isUserInteractionEnabled = true
}
}