     func scrollViewWillBeginDragging(scrollView: UIScrollView) {
         self.delegate?.cellStartedSwiping(self.tag)
         
-        self.moveButtonsInHierarchy(true)
+        self.moveButtonsInHierarchy(shouldHide: true)
     }
     
     func scrollViewDidEndDragging(scrollView: UIScrollView, willDecelerate decelerate: Bool) {
         if !decelerate {
+            /*
             if scrollView.contentOffset.x != 0 {
                 self.moveButtonsInHierarchy(false)
             }
+            */
             self.handleScrollEnd(scrollView)
         }
     }

    
    func changeFrameParadigm(mode: T2GLayoutMode, frame: CGRect) {
        if self.scrollView!.contentOffset.x != 0 {
            self.moveButtonsInHierarchy(true)
            self.scrollView!.contentOffset.x = 0
        }
        

    
    func handleScrollEnd(scrollView: UIScrollView) {
        if self.swipeDirection == .Right {
            UIView.animateWithDuration(0.5, animations: { () -> Void in
                scrollView.scrollRectToVisible(CGRectMake(0, 0, scrollView.frame.size.width, scrollView.frame.size.height), animated: true)
            }, completion: { (complete) -> Void in
                self.delegate?.didCellClose(self.tag)
                println()
            })
        } else {
            UIView.animateWithDuration(0.5, animations: { () -> Void in
                scrollView.scrollRectToVisible(CGRectMake(self.frame.size.width, 0, scrollView.frame.size.width, scrollView.frame.size.height), animated: false)
            }, completion: { (complete) -> Void in
                self.delegate?.didCellOpen(self.tag)
                self.moveButtonsInHierarchy(shouldHide: false)
            })
        }
    }
    
    func moveButtonsInHierarchy(#shouldHide: Bool) {
        for index in 0...3 {
            if let view = self.viewWithTag(70 + index) as? T2GCellButton {
                if shouldHide {
                    self.sendSubviewToBack(view)
                } else {
                    self.bringSubviewToFront(view)
