Commit 4a1008d8 by Daniel Dahan

removed enum CAMediaTimingFunctionType

parent b969bc18
...@@ -33,7 +33,7 @@ internal class MotionCoreAnimationViewContext: MotionAnimatorViewContext { ...@@ -33,7 +33,7 @@ internal class MotionCoreAnimationViewContext: MotionAnimatorViewContext {
fileprivate var transitionStates = [String: (Any?, Any?)]() fileprivate var transitionStates = [String: (Any?, Any?)]()
/// A reference to the animation timing function. /// A reference to the animation timing function.
fileprivate var timingFunction = CAMediaTimingFunction.from(mediaTimingFunctionType: .standard) fileprivate var timingFunction = CAMediaTimingFunction.standard
/// Layer which holds the content. /// Layer which holds the content.
fileprivate var contentLayer: CALayer? { fileprivate var contentLayer: CALayer? {
......
...@@ -28,18 +28,6 @@ ...@@ -28,18 +28,6 @@
import UIKit import UIKit
public enum CAMediaTimingFunctionType {
case linear
case easeIn
case easeOut
case easeInOut
case standard
case deceleration
case acceleration
case sharp
case easeOutBack
}
public extension CAMediaTimingFunction { public extension CAMediaTimingFunction {
// default // default
static let linear = CAMediaTimingFunction(name: kCAMediaTimingFunctionLinear) static let linear = CAMediaTimingFunction(name: kCAMediaTimingFunctionLinear)
...@@ -56,32 +44,3 @@ public extension CAMediaTimingFunction { ...@@ -56,32 +44,3 @@ public extension CAMediaTimingFunction {
// easing.net // easing.net
static let easeOutBack = CAMediaTimingFunction(controlPoints: 0.175, 0.885, 0.32, 1.75) static let easeOutBack = CAMediaTimingFunction(controlPoints: 0.175, 0.885, 0.32, 1.75)
} }
public extension CAMediaTimingFunction {
/**
Converts a CAMediaTimingFunctionType to a CAMediaTimingFunction value.
- Parameter mediaTimingFunctionType: A CAMediaTimingFunctionType.
*/
static func from(mediaTimingFunctionType: CAMediaTimingFunctionType) -> CAMediaTimingFunction {
switch mediaTimingFunctionType {
case .linear:
return .linear
case .easeIn:
return .easeIn
case .easeOut:
return .easeOut
case .easeInOut:
return .easeInOut
case .standard:
return .standard
case .deceleration:
return .deceleration
case .acceleration:
return .acceleration
case .sharp:
return .sharp
case .easeOutBack:
return .easeOutBack
}
}
}
...@@ -820,15 +820,15 @@ extension Motion { ...@@ -820,15 +820,15 @@ extension Motion {
Runs an animation with a specified duration. Runs an animation with a specified duration.
- Parameter duration: An animation duration time. - Parameter duration: An animation duration time.
- Parameter animations: An animation block. - Parameter animations: An animation block.
- Parameter mediaTimingFunctionType: An CAMediaTimingFunctionType value. - Parameter timingFunction: A CAMediaTimingFunction.
- Parameter completion: A completion block that is executed once - Parameter completion: A completion block that is executed once
the animations have completed. the animations have completed.
*/ */
public class func animate(duration: CFTimeInterval, mediaTimingFunctionType: CAMediaTimingFunctionType = .easeInOut, animations: (() -> Void), completion: (() -> Void)? = nil) { public class func animate(duration: CFTimeInterval, timingFunction: CAMediaTimingFunction = .easeInOut, animations: (() -> Void), completion: (() -> Void)? = nil) {
CATransaction.begin() CATransaction.begin()
CATransaction.setAnimationDuration(duration) CATransaction.setAnimationDuration(duration)
CATransaction.setCompletionBlock(completion) CATransaction.setCompletionBlock(completion)
CATransaction.setAnimationTimingFunction(CAMediaTimingFunction.from(mediaTimingFunctionType: mediaTimingFunctionType)) CATransaction.setAnimationTimingFunction(timingFunction)
animations() animations()
CATransaction.commit() CATransaction.commit()
} }
...@@ -836,17 +836,17 @@ extension Motion { ...@@ -836,17 +836,17 @@ extension Motion {
/** /**
Creates a CAAnimationGroup. Creates a CAAnimationGroup.
- Parameter animations: An Array of CAAnimation objects. - Parameter animations: An Array of CAAnimation objects.
- Parameter mediaTimingFunctionType: An CAMediaTimingFunctionType value. - Parameter timingFunction: A CAMediaTimingFunction.
- Parameter duration: An animation duration time for the group. - Parameter duration: An animation duration time for the group.
- Returns: A CAAnimationGroup. - Returns: A CAAnimationGroup.
*/ */
public class func animate(group animations: [CAAnimation], mediaTimingFunctionType: CAMediaTimingFunctionType = .easeInOut, duration: CFTimeInterval = 0.5) -> CAAnimationGroup { public class func animate(group animations: [CAAnimation], timingFunction: CAMediaTimingFunction = .easeInOut, duration: CFTimeInterval = 0.5) -> CAAnimationGroup {
let group = CAAnimationGroup() let group = CAAnimationGroup()
group.fillMode = MotionAnimationFillModeToValue(mode: .both) group.fillMode = MotionAnimationFillModeToValue(mode: .both)
group.isRemovedOnCompletion = false group.isRemovedOnCompletion = false
group.animations = animations group.animations = animations
group.duration = duration group.duration = duration
group.timingFunction = CAMediaTimingFunction.from(mediaTimingFunctionType: mediaTimingFunctionType) group.timingFunction = timingFunction
return group return group
} }
} }
...@@ -380,15 +380,6 @@ public extension MotionAnimation { ...@@ -380,15 +380,6 @@ public extension MotionAnimation {
} }
/** /**
Sets the view's timing function for the animation.
- Parameter type: A CAMediaTimingFunctionType.
- Returns: A MotionAnimation.
*/
static func timingFunction(type: CAMediaTimingFunctionType) -> MotionAnimation {
return .timingFunction(CAMediaTimingFunction.from(mediaTimingFunctionType: type))
}
/**
Available in iOS 9+, animates a view using the spring API, Available in iOS 9+, animates a view using the spring API,
given a stiffness and damping. given a stiffness and damping.
- Parameter stiffness: A CGFlloat. - Parameter stiffness: A CGFlloat.
......
...@@ -84,7 +84,7 @@ public struct MotionAnimationState { ...@@ -84,7 +84,7 @@ public struct MotionAnimationState {
public var duration: TimeInterval = 0.35 public var duration: TimeInterval = 0.35
/// The timing function value of the animation. /// The timing function value of the animation.
public var timingFunction = CAMediaTimingFunction.from(mediaTimingFunctionType: .easeInOut) public var timingFunction = CAMediaTimingFunction.easeInOut
/// Custom target states. /// Custom target states.
public var custom: [String: Any]? public var custom: [String: Any]?
......
...@@ -395,15 +395,6 @@ public extension MotionTransition { ...@@ -395,15 +395,6 @@ public extension MotionTransition {
} }
/** /**
Sets the view's timing function for the transition.
- Parameter type: A CAMediaTimingFunctionType.
- Returns: A MotionAnimation.
*/
static func timingFunction(type: CAMediaTimingFunctionType) -> MotionTransition {
return .timingFunction(CAMediaTimingFunction.from(mediaTimingFunctionType: type))
}
/**
Available in iOS 9+, animates a view using the spring API, Available in iOS 9+, animates a view using the spring API,
given a stiffness and damping. given a stiffness and damping.
- Parameter stiffness: A CGFlloat. - Parameter stiffness: A CGFlloat.
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment