         single.requireGestureRecognizerToFail(double)
         scrollView.addGestureRecognizer(single)
         scrollView.addGestureRecognizer(double)
+        
+        if transitionInfo?.canSwipe == true {
+            let pan = UIPanGestureRecognizer(target: self, action: #selector(pan(_:)))
+            pan.delegate = self
+            scrollView.addGestureRecognizer(pan)
+        }
     }
     
     private func setupImageHD() {

            let imageViewer = transitionContext.viewControllerForKey(UITransitionContextFromViewControllerKey) as! GSImageViewerController
                imageViewer.view.removeFromSuperview()
            
                tempMask.frame = imageViewer.view.bounds
                tempImage.frame = imageViewer.view.bounds
            
            UIView.animateWithDuration(transitionInfo.duration,
                animations: {

public class GSTransitionInfo {
    
    public var duration: NSTimeInterval = 0.35
    public var canSwipe: Bool           = true
    
    public init(fromView: UIView) {
        self.fromView = fromView
