         if let selectedLinkResult = selectedLinkResult {
             didTouch(TouchResult(linkResult: selectedLinkResult, touches: touches, event: event, state: .ended))
             selectedLinkResult.textLink?.action()
+        } else {
+            didTouch(TouchResult(linkResult: nil, touches: touches, event: event, state: .ended))
         }
         
         selectedLinkResult = nil

                self.attributedText = addLinkAttributesTo(attributedText, with: [selectedLinkResult], highlighted: false)
            }
            selectedLinkResult = nil
        }
        
        super.touchesMoved(touches, with: event)

            didTouch(TouchResult(linkResult: linkResult, touches: touches, event: event, state: .began))
        } else {
            selectedLinkResult = nil
            didTouch(TouchResult(linkResult: nil, touches: touches, event: event, state: .began))
        }
        
        addLinkAttributesToLinkResult(withTouches: touches, highlighted: true)
