 
     private func refreshTableView() {
         tableView?.reloadData()
-        tableView?.hidden = userNameMatches.count == 0
+        tableView?.hidden = !requestingMentionUsers && userNameMatches.count == 0
     }
 
     func textChanged() {


        // Check for a mention query
        if let query = mentionQuery(fromString: text) {
            delegate?.usersMatchingQuery(query as String) { [weak self] (users) -> Void in
                if let users = users {
                    self?.userNameMatches = users
                    self?.refreshTableView()
                }
            }
        }
        else {
            userNameMatches.removeAll()
            refreshTableView()
        }

    var view: T?
    var tableView: UITableView?
    weak var delegate: MentionComposerDelegate?
    private let originalTextColor: UIColor
    private var mentionRange           = NSRange(location: 0, length: 0)
    private var userNameMatches        = [MentionUserType]()
    private var lengthOfMentionPerId   = [Int : Int]()
    private var requestingMentionUsers = false

    /// Returns the range of the most recently typed character
    private var recentCharacterRange: NSRange {
