 	//
 	//	:name:	handleLeftTapGesture
 	//
-	internal func handleLeftTapGesture(gesture: UIPanGestureRecognizer) {
-		closeLeftViewContainer()
+	internal func handleLeftTapGesture(recognizer: UIPanGestureRecognizer) {
+		if let _ = leftView {
+			closeLeftViewContainer()
+		}
 	}
 	
 	//

	//	:name:	isLeftPointContainedWithinRect
	//
	private func isLeftPointContainedWithinRect(point: CGPoint) -> Bool {
		return CGRectContainsPoint(CGRectMake(0, 0, 64, view.frame.height), point)
	}
	
	//
	//	:name:	isPointContainedWithinViewController
	//
	private func isPointContainedWithinViewController(inout viewContainer: MaterialView?, point: CGPoint) -> Bool {
		if let vc = viewContainer {
			return CGRectContainsPoint(vc.frame, point)
		}
		return false
	}
	
	//

	//	:name:	handleLeftPanGesture
	//
	internal func handleLeftPanGesture(recognizer: UIPanGestureRecognizer) {
		if let v = leftView {
			switch recognizer.state {
			case .Began:
				originalPosition = v.position
				toggleStatusBar(true)
				SideNavigationViewController.backdropLayer.hidden = false
			case .Changed:
				let translation: CGPoint = recognizer.translationInView(v)
				let w: CGFloat = v.width
				MaterialAnimation.animationDisabled({
					v.position.x = self.originalPosition.x + translation.x > (w / 2) ? (w / 2) : self.originalPosition.x + translation.x
				})
			case .Ended:
				let point: CGPoint = recognizer.velocityInView(recognizer.view)
				let x: CGFloat = point.x >= 1000 || point.x <= -1000 ? point.x : 0
				if v.x <= CGFloat(floor(leftOriginX)) + SideNavigationViewController.horizontalThreshold || point.x <= -1000 {
					closeLeftViewContainer(x)
				} else {
					openLeftViewContainer(x)
				}
			default:break
			}
