             viewToFade?.alpha = endingAlpha
 
         }, completion: { [unowned self] finished in
-            if self.shouldPerformZoomingAnimation {
+            if !self.shouldPerformZoomingAnimation {
                 self.completeTransitionWithTransitionContext(transitionContext)
             }
         })

        })

        let startingViewFinalTransform = 1.0 / endingViewInitialTransform
        let translatedEndingViewFinalCenter = PhotoTransitionAnimator.centerPointForView(endingView, translatedToContainerView: containerView)

        UIView.animateWithDuration(transitionDuration(transitionContext), delay: 0, usingSpringWithDamping: zoomingAnimationSpringDamping, initialSpringVelocity: 0, options: [.AllowAnimatedContent, .BeginFromCurrentState], animations: { 
            endingViewForAnimation.transform = finalEndingViewTransform
            endingViewForAnimation.center = translatedEndingViewFinalCenter
            
            startingViewForAnimation.transform = CGAffineTransformScale(startingViewForAnimation.transform, startingViewFinalTransform, startingViewFinalTransform)
            startingViewForAnimation.center = translatedEndingViewFinalCenter

        }, completion: { [unowned self] finished in
            endingViewForAnimation.removeFromSuperview()
            endingView.alpha = 1
            startingView.alpha = 1

            self.completeTransitionWithTransitionContext(transitionContext)
        })


        let containerView = transitionContext.containerView()!

        var _startingViewForAnimation: UIView? = self.startingViewForAnimation
        var _endingViewForAnimation: UIView? = self.startingViewForAnimation

        if _startingViewForAnimation == nil {
            if let startingView = startingView {
                _startingViewForAnimation = PhotoTransitionAnimator.newAnimationViewFromView(startingView)
            }
        }

        if _endingViewForAnimation == nil {
            if let endingView = endingView {
                _endingViewForAnimation = PhotoTransitionAnimator.newAnimationViewFromView(endingView)
            }
        }

        guard let startingViewForAnimation = _startingViewForAnimation else {
            return
        }
        guard let endingViewForAnimation = _endingViewForAnimation else {
            return
        }

        let finalEndingViewTransform = endingView?.transform

        let endingViewInitialTransform = startingViewForAnimation.frame.height / endingViewForAnimation.frame.height

        if let startingView = startingView {
            let translatedStartingViewCenter = PhotoTransitionAnimator.centerPointForView(startingView, translatedToContainerView: containerView)
            startingViewForAnimation.center = translatedStartingViewCenter
            endingViewForAnimation.center = translatedStartingViewCenter
        }

        endingViewForAnimation.transform = CGAffineTransformScale(endingViewForAnimation.transform, endingViewInitialTransform, endingViewInitialTransform)
        endingViewForAnimation.alpha = 0

        containerView.addSubview(startingViewForAnimation)
        containerView.addSubview(endingViewForAnimation)

        startingView?.alpha = 0
        endingView?.alpha = 0

        let fadeInDuration = transitionDuration(transitionContext) * animationDurationEndingViewFadeInRatio
        let fadeOutDuration = transitionDuration(transitionContext) * animationDurationStartingViewFadeOutRatio
