         expandOverlay()
         expandItems()
         transitionButtonTitle()
-        
-        isOpen = true
     }
     
     open func close() {
-        guard isOpen else { return }
-        guard !isAnimatingOpenClose else {
-            bufferedAction = bufferedAction ?? .close
-            return
-        }
+        guard isOpen && !isAnimatingOpenClose else { return }
         
         delegate?.actionButtonWillClose?(self)
         

    fileprivate var buttonOpenCenter: CGPoint = .zero
    fileprivate var isAnimatingOpenClose = false
    fileprivate var isAnimatingShowHide = false
    fileprivate var bufferedAction: ToggleAction?
    
    fileprivate let slideAnimationOffset: CGFloat = 20.0
    fileprivate let scaleAnimationOffset: CGFloat = 0.5

        reduceOverlay()
        reduceItems()
        transitionButtonTitle()
    }
    
    
