private void OnFeedChanged(RdrFeed feed) { EventHandler eh = FeedChanged; if (eh != null) { eh(feed, new EventArgs()); } }
private void SetFeedItemsBinding(RdrFeed feed) { CollectionViewSource sortByDate = new CollectionViewSource { IsLiveSortingRequested = true, Source = feed.Items }; sortByDate.SortDescriptions.Add(new SortDescription("PubDate", ListSortDirection.Descending)); Binding itemsBinding = new Binding { Source = sortByDate, Mode = BindingMode.OneWay }; BindingOperations.SetBinding(ic_Items, ItemsControl.ItemsSourceProperty, itemsBinding); }
private async Task RefreshFeedAsync(RdrFeed feed) { if (feed.Name.Equals("Unread")) return; feed.Updating = true; Activity = activeTasks.Count() > 0; string websiteAsString = await GetFeed(feed.XmlUrl); if (String.IsNullOrWhiteSpace(websiteAsString)) { feed.Updating = false; Activity = activeTasks.Count() > 0; return; } websiteAsString = websiteAsString.Replace((char)(0x1F), (char)(0x20)); // removing this breaks something XDocument x = ParseWebsiteStringIntoXDocument(websiteAsString, feed.XmlUrl); if (x == null) { feed.Updating = false; Activity = activeTasks.Count() > 0; return; } feed.Load(x); AddUnreadItemsToUnreadCollector(feed.Items); feed.Updating = false; Activity = activeTasks.Count() > 0; _feeds.AlternativeSort(unreadCollector, null); }
private async Task LoadFeedsAsync() { IEnumerable<string> feedUris = await ((App)(App.Current)).Repo.LoadAsync(); List<RdrFeed> feeds = new List<RdrFeed>(); foreach (string each in feedUris) { RdrFeed feed = new RdrFeed(new Uri(each)); feeds.Add(feed); } _feeds.AddMissing(feeds); List<RdrFeed> toBeRemoved = (from each in Feeds where (feeds.Contains<RdrFeed>(each) == false) && (each.Name.Equals("Unread") == false) select each) .ToList(); _feeds.RemoveList(toBeRemoved); }
public void MoveItemsToView(RdrFeed feed) { OnFeedChanged(feed); }
private void GoToFeed(RdrFeed feed) { Utils.OpenUriInBrowser(feed.XmlUrl); }