         
         navigationItem.titleView = titleView
         navigationBar.addExtendedNavigationBarView(searchBarContainerView)
+        isRefreshControlEnabled = true
     }
     
     private var fetchedResultsController: NSFetchedResultsController<WMFContentGroup>!

        return titleView
    }()

    // MARK - Search
    
    lazy var searchBarContainerView: UIView = {

        
    }
    
    var isLoadingNewContent = false
    var isScrolledToTop: Bool {
        return collectionView.contentOffset.y <= 0 - collectionView.contentInset.top
    }
    @objc(updateFeedSourcesWithDate:userInitiated:completion:)
    public func updateFeedSources(with date: Date?, userInitiated: Bool, completion: @escaping () -> Void) {
        assert(Thread.isMainThread)
        guard !isLoadingNewContent else {
            return
        }
        isLoadingNewContent = true
        if let refreshControl = collectionView.refreshControl, !refreshControl.isRefreshing {
            #if UI_TEST
            #else
            refreshControl.beginRefreshing()
            #endif
            if isScrolledToTop && numberOfSectionsInExploreFeed == 0 {
                collectionView.contentOffset = CGPoint(x: 0, y: 0 - collectionView.contentInset.top - refreshControl.frame.size.height)
            }
        }
        self.dataStore.feedContentController.updateFeedSources(with: date, userInitiated: userInitiated) {
            DispatchQueue.main.async {
                self.isLoadingNewContent = false
                self.resetRefreshControl()
                if date == nil {
                    self.startMonitoringReachabilityIfNeeded()
                    self.showOfflineEmptyViewIfNeeded()
                }
                completion()
            }
        }
    }
    
