       if (shouldAddTokenFromTextInput && tokenField.text != nil && tokenField.text != KSTextEmpty) {         
          let trimmedString = tokenField.text!.stringByTrimmingCharactersInSet(NSCharacterSet.whitespaceCharacterSet())
          addTokenWithTitle(trimmedString)
+         _hideSearchResults()
          return true
       }
       return false

         _tokenField.placeholder = newValue
      }
   }
   
   /// default is .Rounded, creates rounded corner
   public var style: KSTokenViewStyle = .Rounded {
      didSet(newValue) {

      if (string.isEmpty == true && _tokenField.text == KSTextEmpty) {
         return false
      }
    
      var searchString: String
      let olderText = _tokenField.text
      var olderTextTrimmed = olderText!
      // remove the empty text marker from the beginning of the string
      if (olderText?.characters.first == KSTextEmpty.characters.first) {
         olderTextTrimmed = olderText!.substringFromIndex(olderText!.startIndex.advancedBy(1))
      }
    
      // Check if character is removed at some index
      // Remove character at that index
      if (string.isEmpty) {
         let first: String = olderText!.substringToIndex(olderText!.startIndex.advancedBy(range.location)) as String
         let second: String = olderText!.substringFromIndex(olderText!.startIndex.advancedBy(range.location+1)) as String
         searchString = first + second
         searchString = searchString.stringByTrimmingCharactersInSet(NSCharacterSet.whitespaceCharacterSet())
         
      } else { // new character added
         if (tokenizingCharacters.contains(string) && olderText != KSTextEmpty && olderTextTrimmed != "") {
            addTokenWithTitle(olderTextTrimmed, tokenObject: nil)
            _hideSearchResults()
            return false
         }
         searchString = (olderText! as NSString).stringByReplacingCharactersInRange(range, withString: string)
         if (searchString.characters.first == KSTextEmpty.characters.first) {
            searchString = searchString.substringFromIndex(searchString.startIndex.advancedBy(1))
         }
      }
    
      // Allow all other characters
      if (searchString.characters.count >= minimumCharactersToSearch && searchString != "\n") {
         _lastSearchString = searchString
         _startSearchWithString(_lastSearchString)
      } else {
         _hideSearchResults()
      }
    
      _tokenField.scrollViewScrollToEnd()
      return true
   }
