mirror of
https://github.com/Swiftgram/Telegram-iOS.git
synced 2025-12-22 14:20:20 +00:00
Progress indicators
This commit is contained in:
@@ -789,7 +789,7 @@ public extension ContainedViewLayoutTransition {
|
||||
}
|
||||
}
|
||||
|
||||
func updateAlpha(layer: CALayer, alpha: CGFloat, completion: ((Bool) -> Void)? = nil) {
|
||||
func updateAlpha(layer: CALayer, alpha: CGFloat, beginWithCurrentState: Bool = false, completion: ((Bool) -> Void)? = nil) {
|
||||
if layer.opacity.isEqual(to: Float(alpha)) {
|
||||
if let completion = completion {
|
||||
completion(true)
|
||||
@@ -804,7 +804,12 @@ public extension ContainedViewLayoutTransition {
|
||||
completion(true)
|
||||
}
|
||||
case let .animated(duration, curve):
|
||||
let previousAlpha = layer.opacity
|
||||
let previousAlpha: Float
|
||||
if beginWithCurrentState, let presentation = layer.presentation() {
|
||||
previousAlpha = presentation.opacity
|
||||
} else {
|
||||
previousAlpha = layer.opacity
|
||||
}
|
||||
layer.opacity = Float(alpha)
|
||||
layer.animateAlpha(from: CGFloat(previousAlpha), to: alpha, duration: duration, timingFunction: curve.timingFunction, mediaTimingFunction: curve.mediaTimingFunction, completion: { result in
|
||||
if let completion = completion {
|
||||
|
||||
Reference in New Issue
Block a user