public DownloadManagerViewModel()
{
_downloadsSemaphore = new FifoSemaphore(Properties.Settings.Default.MaxParallelDownloads);
var olderDownloads = new List<DownloadViewModel>();
ServiceLocator.Instance.GetService<ILibraryManager>().UpdateScrapersList(ScraperLoader.Instance.AllScrapers);
foreach (DownloadedChapterInfo chapterInfo in ServiceLocator.Instance.GetService<ILibraryManager>().GetDownloads())
{
var downloadViewModel = new DownloadViewModel(chapterInfo, _downloadsSemaphore);
downloadViewModel.RemoveFromCollection += DownloadViewModel_RemoveFromCollection;
downloadViewModel.DownloadStarted += DownloadViewModel_DownloadStarted;
olderDownloads.Add(downloadViewModel);
}
Downloads = new AsyncObservableCollection<DownloadViewModel>(olderDownloads);
_downloadsCollectionView = (ListCollectionView) CollectionViewSource.GetDefaultView(Downloads);
_downloadsCollectionView.CustomSort = new DownloadAgeComparer();
// init filter
SelectedTabIndex = Properties.Settings.Default.SelectedDownloadsTab;
}