     public var delegate : CAPSPageMenuDelegate?
     
     var tapTimer : NSTimer?
+    
+    enum CAPSPageMenuScrollDirection : Int {
+        case Left
+        case Right
+        case Other
+    }
     
     // MARK: - View life cycle
     

                        // Check if scroll direction changed
                        if !didTapMenuItemToScroll {
                            if didScrollAlready {
                                var newScrollDirection : String  = ""
                                
                                if (CGFloat(startingPageForScroll) * scrollView.frame.width > scrollView.contentOffset.x) {
                                    newScrollDirection = "right"
                                } else if (CGFloat(startingPageForScroll) * scrollView.frame.width < scrollView.contentOffset.x) {
                                    newScrollDirection = "left"
                                }
                                
                                if newScrollDirection != "" {
                                    if !lastScrollDirection.isEqual(newScrollDirection) {
                                        var index : Int = newScrollDirection == "left" ? currentPageIndex + 1 : currentPageIndex - 1
                                        
                                        if index >= 0 && index < controllerArray.count {
                                            // Check dictionary if page was already added

                                            pagesAddedDictionary[index] = index
                                        }
                                        
                                        lastScrollDirection = .Right
                                    }
                                } else if (lastControllerScrollViewContentOffset < scrollView.contentOffset.x) {
                                    if currentPageIndex != 0 {
