   }
 
   func dynamicAnimatorDidPause(animator: UIDynamicAnimator) {
-    if animator == snapAnimUIDynamicAnimator? {
+    if animator == snapAnimUIDynamicAnimator {
       println("Snapped")
       animator.removeAllBehaviors()
-      self.userInteractionEnabled = true
+      centerTick = nil
+      isSnapping = false
       self.expanded = false
     }
   }

      let snapPoint = CGPoint(x: t.frame.midX,y: snapPointY)
      let snap = UISnapBehavior(item: centerTick!, snapToPoint: snapPoint)
      snap.damping = 0.1
      self.userInteractionEnabled = false
      snap.action = {
        println("Snapping")
      }
      snapAnimUIDynamicAnimator?.addBehavior(snap)
    } else {
      closeLater()
    }

  }

  override func beginTrackingWithTouch(touch: UITouch, withEvent event: UIEvent) -> Bool {
    if isSnapping {
      println("Canceled snapping")
      snapAnimUIDynamicAnimator.removeAllBehaviors()
      isSnapping = false
    }
    expanded = true
    continueTrackingWithTouch(touch, withEvent: event)
    return true  // Track continuously
