   fileprivate func show(duration: TimeInterval? = nil) {
     isAnimating = true
     dismissTimer?.invalidate()
-    layer.removeAllAnimations()
+
     setNeedsLayout()
     performEntranceAnimation {
       self.containerView?.addGestureRecognizer(self.tapRemoveGestureRecognizer ?? UITapGestureRecognizer())

      return
    }

    layer.removeAllAnimations()
    transform = .identity
    shouldBounce = false
    isAnimating = true
    dismissTimer?.invalidate()
    dismissTimer = nil

    dismissActionAnimation(completion)
  }

  fileprivate func resetView() {
    layer.removeAllAnimations()
    transform = .identity
    shouldBounce = false
  }

  fileprivate func updateBubble() {
    stopActionAnimation {
      UIView.animate(withDuration: 0.2, delay: 0, options: [.transitionCrossDissolve, .beginFromCurrentState], animations: {
