             completion?(finished: true)
         }
     }
+
+    func checkScrollHeightIsLargeEnoughForScrolling() -> Bool {
+        return (scrollViewHeight + 2 * UIConstants.ToolbarHeight) < scrollView?.contentSize.height
+    }
 }
 
 extension BrowserScrollingController: UIGestureRecognizerDelegate {


    private var lastContentOffset: CGFloat = 0
    private var scrollDirection: ScrollDirection = .Down

    override init() {
        super.init()
    }

    func showToolbars(#animated: Bool, completion: ((finished: Bool) -> Void)? = nil) {
        let durationRatio = abs(headerTopOffset / headerFrame.height)
        let actualDuration = NSTimeInterval(ToolbarBaseAnimationDuration * durationRatio)
        self.animateToolbarsWithOffsets(

}

extension BrowserScrollingController: UIScrollViewDelegate {
    func scrollViewDidEndDragging(scrollView: UIScrollView, willDecelerate decelerate: Bool) {
        if (decelerate || (toolbarState == .Animating && !decelerate)) && checkScrollHeightIsLargeEnoughForScrolling() {
            if scrollDirection == .Up {
                showToolbars(animated: true)
            } else if scrollDirection == .Down {
                hideToolbars(animated: true)
            }
        }
    }

