     
     func didTapTabItem(notification: NSNotification) {
         if let index = notification.userInfo?["object"] as? Int where index == EventBlankTabIndex.Speakers.rawValue {
-          let items = isFiltering ? filteredItems : self.items
+
+            if tableView(self.tableView, numberOfRowsInSection: 0) == 0 {
+                return
+            }
+            
+            let section = currentItems.first!
+            let nrResults = section[section.keys.first!]!.count
+
             mainQueue({
-              if items.count > 0 {
+              if nrResults > 0 {
                 self.tableView.scrollToRowAtIndexPath(NSIndexPath(forRow: 0, inSection: 0), atScrollPosition: UITableViewScrollPosition.Top, animated: true)
               }
             })

    }
    
    func sectionIndexTitlesForTableView(tableView: UITableView) -> [AnyObject]! {
        let items = isFiltering ? filteredItems : self.items
        
        if items.count < 4 {
            return []
        } else {
            return items.map {$0.keys.first!}
        }
    }
    
    //MARK: - favorites

    
    var items = [SpeakerSection]()
    var filteredItems = [SpeakerSection]()
    
    var currentItems: [SpeakerSection] {
        return isFiltering ? filteredItems : items
    }
    
    var favorites = Favorite.allSpeakerFavoriteIDs()
    
