     override public func touchesBegan(touches: Set<UITouch>, withEvent event: UIEvent?) {
         guard let location = touches.first?.locationInView(self) else { return }
         guard let textContainer = self.textView?.textContainer else { return }
+        
+        self.textView?.textContainer.size = self.textView!.frame.size
+        
         let index = layoutManager.glyphIndexForPoint(location, inTextContainer: textContainer)
         
         self.searchCustomeLink(index, inCustomeLinks: self.customLinks) { (linkOrNil) -> Void in

                return
            }
            
            if !text.hasPrefix("http://") && !text.hasPrefix("https://") {
                text = "http://" + text
            }
            guard let url = NSURL(string: text) else { return }
            UIApplication.sharedApplication().openURL(url)
            
        }

    override public func touchesEnded(touches: Set<UITouch>, withEvent event: UIEvent?) {
        guard let location = touches.first?.locationInView(self) else { return }
        guard let textContainer = self.textView?.textContainer else { return }
        
        self.textView?.textContainer.size = self.textView!.frame.size
        
        let index = layoutManager.glyphIndexForPoint(location, inTextContainer: textContainer)

        self.searchCustomeLink(index, inCustomeLinks: self.customLinks) { (linkOrNil) -> Void in
