From 44c84bc116ce9faf63233e6a72f65804955ca5c4 Mon Sep 17 00:00:00 2001 From: Ilya Laktyushin Date: Sun, 28 Apr 2019 17:18:14 +0400 Subject: [PATCH] Remove ongoing navigation bar frame animations on intermediate transition --- Display/ViewController.swift | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/Display/ViewController.swift b/Display/ViewController.swift index ee9b509d4a..636aaf4855 100644 --- a/Display/ViewController.swift +++ b/Display/ViewController.swift @@ -296,8 +296,12 @@ open class ViewControllerPresentationArguments { if let contentNode = navigationBar.contentNode, case .expansion = contentNode.mode, !self.displayNavigationBar { navigationBarFrame.origin.y += contentNode.height + statusBarHeight } - transition.updateFrame(node: navigationBar, frame: navigationBarFrame) navigationBar.updateLayout(size: navigationBarFrame.size, leftInset: layout.safeInsets.left, rightInset: layout.safeInsets.right, transition: transition) + if !transition.isAnimated { + navigationBar.layer.cancelAnimationsRecursive(key: "bounds") + navigationBar.layer.cancelAnimationsRecursive(key: "position") + } + transition.updateFrame(node: navigationBar, frame: navigationBarFrame) navigationBar.setHidden(!self.displayNavigationBar, animated: transition.isAnimated) }