diff --git a/Application/Data/LegacyDatabase.cs b/Application/Data/LegacyDatabase.cs
index 55dd41b..250bbdf 100644
--- a/Application/Data/LegacyDatabase.cs
+++ b/Application/Data/LegacyDatabase.cs
@@ -185,10 +185,7 @@ public static class LegacyDatabase
{
foreach (var category in categories)
{
- if (category.Name == Category.DefaultName)
- category.IsDefault = true;
-
- category.Feeds = feeds.Where(f => f.CategoryId == category.Id).ToList();
+ category.IsDefault = category.Name == Category.DefaultName;
}
foreach (var feed in feeds)
diff --git a/Application/FeedCenter.csproj b/Application/FeedCenter.csproj
index 7dd9f99..9f8910f 100644
--- a/Application/FeedCenter.csproj
+++ b/Application/FeedCenter.csproj
@@ -101,5 +101,6 @@
xcopy /s /y /i "$(PkgMicrosoft_SqlServer_Compact)\NativeBinaries\amd64\*.*" "$(TargetDir)amd64"
Resources\Application.ico
+ true
\ No newline at end of file
diff --git a/Application/FeedParsers/FeedParserBase.cs b/Application/FeedParsers/FeedParserBase.cs
index 8a18d37..5139c74 100644
--- a/Application/FeedParsers/FeedParserBase.cs
+++ b/Application/FeedParsers/FeedParserBase.cs
@@ -5,34 +5,15 @@ using System.Xml;
namespace FeedCenter.FeedParsers;
-[Serializable]
-internal class InvalidFeedFormatException : ApplicationException
-{
- internal InvalidFeedFormatException(Exception exception)
- : base(string.Empty, exception)
- {
- }
-}
-
internal abstract class FeedParserBase
{
- #region Member variables
-
protected readonly Feed Feed;
- #endregion
-
- #region Constructor
-
protected FeedParserBase(Feed feed)
{
Feed = feed;
}
- #endregion
-
- #region Methods
-
public abstract FeedReadResult ParseFeed(string feedText);
protected abstract FeedItem ParseFeedItem(XmlNode node);
@@ -57,9 +38,6 @@ internal abstract class FeedParserBase
{
Log.Logger.Information("New link: " + newFeedItem.Link);
- // Associate the new item with the right feed
- newFeedItem.Feed = Feed;
-
// Set the item as new
newFeedItem.New = true;
@@ -96,10 +74,6 @@ internal abstract class FeedParserBase
sequence++;
}
- #endregion
-
- #region Parser creation and detection
-
public static FeedParserBase CreateFeedParser(Feed feed, string feedText)
{
var feedType = DetectFeedType(feedText);
@@ -155,6 +129,4 @@ internal abstract class FeedParserBase
throw new FeedParseException(FeedParseError.InvalidXml);
}
}
-
- #endregion
}
\ No newline at end of file
diff --git a/Application/FeedParsers/InvalidFeedFormatException.cs b/Application/FeedParsers/InvalidFeedFormatException.cs
new file mode 100644
index 0000000..7be0825
--- /dev/null
+++ b/Application/FeedParsers/InvalidFeedFormatException.cs
@@ -0,0 +1,12 @@
+using System;
+
+namespace FeedCenter.FeedParsers;
+
+[Serializable]
+internal class InvalidFeedFormatException : ApplicationException
+{
+ internal InvalidFeedFormatException(Exception exception)
+ : base(string.Empty, exception)
+ {
+ }
+}
\ No newline at end of file
diff --git a/Application/Feeds/Category.cs b/Application/Feeds/Category.cs
index f82cf0f..0f756ad 100644
--- a/Application/Feeds/Category.cs
+++ b/Application/Feeds/Category.cs
@@ -1,10 +1,9 @@
-using System;
+using JetBrains.Annotations;
+using Realms;
+using System;
using System.Collections;
-using System.Collections.Generic;
using System.ComponentModel;
using System.Linq;
-using JetBrains.Annotations;
-using Realms;
namespace FeedCenter;
@@ -20,9 +19,6 @@ public class Category : RealmObject, INotifyDataErrorInfo
_dataErrorDictionary.ErrorsChanged += DataErrorDictionaryErrorsChanged;
}
- [Ignored]
- public ICollection Feeds { get; set; }
-
[PrimaryKey]
public Guid Id { get; set; } = Guid.NewGuid();
diff --git a/Application/Feeds/Feed.cs b/Application/Feeds/Feed.cs
index 07a29b9..f55563b 100644
--- a/Application/Feeds/Feed.cs
+++ b/Application/Feeds/Feed.cs
@@ -22,42 +22,6 @@ using System.Text.RegularExpressions;
namespace FeedCenter;
-#region Enumerations
-
-public enum MultipleOpenAction
-{
- IndividualPages,
- SinglePage
-}
-
-public enum FeedType
-{
- Unknown,
- Rss,
- Rdf,
- Atom
-}
-
-public enum FeedReadResult
-{
- Success,
- NotModified,
- NotDue,
- UnknownError,
- InvalidXml,
- NotEnabled,
- Unauthorized,
- NoResponse,
- NotFound,
- Timeout,
- ConnectionFailed,
- ServerError,
- Moved,
- TemporarilyUnavailable
-}
-
-#endregion
-
public partial class Feed : RealmObject, INotifyDataErrorInfo
{
private static HttpClient _httpClient;
@@ -71,9 +35,7 @@ public partial class Feed : RealmObject, INotifyDataErrorInfo
}
public bool Authenticate { get; set; }
-
public Guid CategoryId { get; set; }
-
public int CheckInterval { get; set; } = 60;
public string Description { get; set; }
public bool Enabled { get; set; } = true;
@@ -225,8 +187,6 @@ public partial class Feed : RealmObject, INotifyDataErrorInfo
_dataErrorDictionary.AddError(propertyName, $"{propertyName} cannot be empty");
}
- #region Reading
-
public FeedReadResult Read(bool forceRead = false)
{
Log.Logger.Information("Reading feed: {0}", Source);
@@ -494,6 +454,4 @@ public partial class Feed : RealmObject, INotifyDataErrorInfo
[GeneratedRegex("&(?!(?:[a-z]+|#[0-9]+|#x[0-9a-f]+);)")]
private static partial Regex UnescapedAmpersandRegex();
-
- #endregion
}
\ No newline at end of file
diff --git a/Application/Feeds/FeedItem.cs b/Application/Feeds/FeedItem.cs
index a592c04..6203d98 100644
--- a/Application/Feeds/FeedItem.cs
+++ b/Application/Feeds/FeedItem.cs
@@ -9,9 +9,6 @@ public partial class FeedItem : RealmObject
{
public bool BeenRead { get; set; }
public string Description { get; set; }
-
- public Feed Feed { get; set; }
-
public Guid FeedId { get; set; }
public string Guid { get; set; }
@@ -22,7 +19,6 @@ public partial class FeedItem : RealmObject
public string Link { get; set; }
public bool New { get; set; }
public int Sequence { get; set; }
-
public string Title { get; set; }
public static FeedItem Create()
diff --git a/Application/Feeds/FeedReadResult.cs b/Application/Feeds/FeedReadResult.cs
new file mode 100644
index 0000000..68f79ae
--- /dev/null
+++ b/Application/Feeds/FeedReadResult.cs
@@ -0,0 +1,19 @@
+namespace FeedCenter;
+
+public enum FeedReadResult
+{
+ Success,
+ NotModified,
+ NotDue,
+ UnknownError,
+ InvalidXml,
+ NotEnabled,
+ Unauthorized,
+ NoResponse,
+ NotFound,
+ Timeout,
+ ConnectionFailed,
+ ServerError,
+ Moved,
+ TemporarilyUnavailable
+}
\ No newline at end of file
diff --git a/Application/Feeds/FeedType.cs b/Application/Feeds/FeedType.cs
new file mode 100644
index 0000000..953594d
--- /dev/null
+++ b/Application/Feeds/FeedType.cs
@@ -0,0 +1,9 @@
+namespace FeedCenter;
+
+public enum FeedType
+{
+ Unknown,
+ Rss,
+ Rdf,
+ Atom
+}
\ No newline at end of file
diff --git a/Application/Feeds/MultipleOpenAction.cs b/Application/Feeds/MultipleOpenAction.cs
new file mode 100644
index 0000000..fea3868
--- /dev/null
+++ b/Application/Feeds/MultipleOpenAction.cs
@@ -0,0 +1,7 @@
+namespace FeedCenter;
+
+public enum MultipleOpenAction
+{
+ IndividualPages,
+ SinglePage
+}
\ No newline at end of file
diff --git a/Application/MainWindow/CategoryList.cs b/Application/MainWindow/CategoryList.cs
index 529cd04..f62cb49 100644
--- a/Application/MainWindow/CategoryList.cs
+++ b/Application/MainWindow/CategoryList.cs
@@ -72,7 +72,7 @@ public partial class MainWindow
// If the category changed then reset the current feed to the first in the category
if (_currentCategory?.Id != category?.Id)
{
- _currentFeed = category == null ? _database.Feeds.FirstOrDefault() : category.Feeds.FirstOrDefault();
+ _currentFeed = category == null ? _database.Feeds.FirstOrDefault() : _database.Feeds.FirstOrDefault(f => f.CategoryId == category.Id);
}
// Set the current category
diff --git a/Application/MainWindow/MainWindow.xaml.cs b/Application/MainWindow/MainWindow.xaml.cs
index 00508f3..0ec56d0 100644
--- a/Application/MainWindow/MainWindow.xaml.cs
+++ b/Application/MainWindow/MainWindow.xaml.cs
@@ -104,8 +104,6 @@ public partial class MainWindow : IDisposable
HandleCommandLine(commandLine);
}
- #region Setting events
-
private void HandlePropertyChanged(object sender, PropertyChangedEventArgs e)
{
// Make sure we're on the right thread
@@ -147,10 +145,6 @@ public partial class MainWindow : IDisposable
}
}
- #endregion
-
- #region Database helpers
-
private void ResetDatabase()
{
// Get the ID of the current feed
@@ -191,10 +185,6 @@ public partial class MainWindow : IDisposable
: _feedList.OrderBy(feed => feed.Name).AsEnumerable().ElementAt(_feedIndex);
}
- #endregion
-
- #region Feed display
-
private void UpdateToolbarButtonState()
{
// Cache the feed count to save (a little) time
@@ -429,6 +419,4 @@ public partial class MainWindow : IDisposable
// Clear the list
LinkTextList.Items.Clear();
}
-
- #endregion
}
\ No newline at end of file
diff --git a/Application/Options/BulkFeedWindow.xaml b/Application/Options/BulkFeedWindow.xaml
index d26aae1..2817872 100644
--- a/Application/Options/BulkFeedWindow.xaml
+++ b/Application/Options/BulkFeedWindow.xaml
@@ -7,34 +7,41 @@
xmlns:my="clr-namespace:FeedCenter.Properties"
xmlns:feedCenter="clr-namespace:FeedCenter"
xmlns:controls="clr-namespace:ChrisKaczor.Wpf.Controls;assembly=ChrisKaczor.Wpf.Controls.Link"
+ xmlns:mah="http://metro.mahapps.com/winfx/xaml/controls"
+ xmlns:options="clr-namespace:FeedCenter.Options"
WindowStartupLocation="CenterOwner"
Icon="/FeedCenter;component/Resources/Application.ico"
FocusManager.FocusedElement="{Binding ElementName=FeedLinkFilterText}">
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
-
+
+
+
@@ -45,9 +52,9 @@
-
-
+
@@ -58,18 +65,17 @@
BorderBrush="{DynamicResource {x:Static SystemColors.ActiveBorderBrushKey}}">
-
-
-
+
-
-
@@ -77,51 +83,44 @@
-
-
-
-
+
+
+
+
+
+
+ HorizontalContentAlignment="Stretch"
+ mah:TextBoxHelper.UseFloatingWatermark="True"
+ mah:TextBoxHelper.Watermark="{x:Static my:Resources.openLabel}"
+ IsEnabled="{Binding ElementName=OpenCheckBox, Path=IsChecked}">
-
-
+
+
+
+
\ No newline at end of file
diff --git a/Application/Options/BulkFeedWindow.xaml.cs b/Application/Options/BulkFeedWindow.xaml.cs
index b72f525..c0b1f3e 100644
--- a/Application/Options/BulkFeedWindow.xaml.cs
+++ b/Application/Options/BulkFeedWindow.xaml.cs
@@ -1,10 +1,10 @@
-using System.Collections.Generic;
+using FeedCenter.Data;
+using System.Collections.Generic;
using System.ComponentModel;
using System.Linq;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
-using FeedCenter.Data;
namespace FeedCenter.Options;
@@ -52,11 +52,14 @@ public partial class BulkFeedWindow
private void HandleOkButtonClick(object sender, RoutedEventArgs e)
{
- foreach (var item in _checkedListBoxItems.Where(i => i.IsChecked))
+ Database.Entities.SaveChanges(() =>
{
- if (OpenComboBox.IsEnabled)
- item.Item.MultipleOpenAction = (MultipleOpenAction) ((ComboBoxItem) OpenComboBox.SelectedItem).Tag;
- }
+ foreach (var item in _checkedListBoxItems.Where(i => i.IsChecked))
+ {
+ if (OpenComboBox.IsEnabled)
+ item.Item.MultipleOpenAction = (MultipleOpenAction) ((ComboBoxItem) OpenComboBox.SelectedItem).Tag;
+ }
+ });
DialogResult = true;
Close();
@@ -91,10 +94,4 @@ public partial class BulkFeedWindow
checkedListItem.IsChecked = !checkedListItem.IsChecked;
}
}
-
- private void HandleGridMouseRightButtonUp(object sender, System.Windows.Input.MouseButtonEventArgs e)
- {
- OpenLabel.IsEnabled = !OpenLabel.IsEnabled;
- OpenComboBox.IsEnabled = !OpenComboBox.IsEnabled;
- }
}
\ No newline at end of file
diff --git a/Application/Options/CheckedFeedListItem.cs b/Application/Options/CheckedFeedListItem.cs
new file mode 100644
index 0000000..8132b7e
--- /dev/null
+++ b/Application/Options/CheckedFeedListItem.cs
@@ -0,0 +1,6 @@
+namespace FeedCenter.Options
+{
+ public class CheckedFeedListItem : CheckedListItem
+ {
+ }
+}
\ No newline at end of file
diff --git a/Application/Options/FeedsOptionsPanel.xaml b/Application/Options/FeedsOptionsPanel.xaml
index 62b5c9a..48140da 100644
--- a/Application/Options/FeedsOptionsPanel.xaml
+++ b/Application/Options/FeedsOptionsPanel.xaml
@@ -10,6 +10,16 @@
mc:Ignorable="d"
d:DesignHeight="311"
d:DesignWidth="425">
+
+
+
+
+
+
+
+
+
+
@@ -20,41 +30,11 @@
-
-
-
-
-
-
-
-
-
-
+ Background="{x:Null}"
+ d:DataContext="{d:DesignInstance feedCenter:Category }">
-
-
-
+
+
+
+
+
+
+
+
+
+
0;
+ EditFeedButton.IsEnabled = FeedDataGrid.SelectedItems.Count == 1;
+ DeleteFeedButton.IsEnabled = FeedDataGrid.SelectedItems.Count > 0;
}
private void AddFeed()
{
var feed = Feed.Create();
- var category = (Category) CategoryListBox.SelectedItem;
+ var category = (Category) CategoryDataGrid.SelectedItem;
feed.CategoryId = category.Id;
@@ -59,17 +59,17 @@ public partial class FeedsOptionsPanel
Database.Entities.SaveChanges(() => Database.Entities.Feeds.Add(feed));
- FeedListBox.SelectedItem = feed;
+ FeedDataGrid.SelectedItem = feed;
SetFeedButtonStates();
}
private void EditSelectedFeed()
{
- if (FeedListBox.SelectedItem == null)
+ if (FeedDataGrid.SelectedItem == null)
return;
- var feed = (Feed) FeedListBox.SelectedItem;
+ var feed = (Feed) FeedDataGrid.SelectedItem;
var feedWindow = new FeedWindow();
@@ -81,9 +81,9 @@ public partial class FeedsOptionsPanel
if (MessageBox.Show(ParentWindow, Properties.Resources.ConfirmDeleteFeeds, Properties.Resources.ConfirmDeleteTitle, MessageBoxButton.YesNo, MessageBoxImage.Question, MessageBoxResult.No) == MessageBoxResult.No)
return;
- var selectedItems = new Feed[FeedListBox.SelectedItems.Count];
+ var selectedItems = new Feed[FeedDataGrid.SelectedItems.Count];
- FeedListBox.SelectedItems.CopyTo(selectedItems, 0);
+ FeedDataGrid.SelectedItems.CopyTo(selectedItems, 0);
foreach (var feed in selectedItems)
Database.Entities.SaveChanges(() => Database.Entities.Feeds.Remove(feed));
@@ -239,11 +239,11 @@ public partial class FeedsOptionsPanel
{
AddCategoryButton.IsEnabled = true;
- var selectedId = ((Category) CategoryListBox.SelectedItem).Id;
+ var selectedId = ((Category) CategoryDataGrid.SelectedItem).Id;
- EditCategoryButton.IsEnabled = CategoryListBox.SelectedItem != null &&
+ EditCategoryButton.IsEnabled = CategoryDataGrid.SelectedItem != null &&
selectedId != Database.Entities.DefaultCategory.Id;
- DeleteCategoryButton.IsEnabled = CategoryListBox.SelectedItem != null &&
+ DeleteCategoryButton.IsEnabled = CategoryDataGrid.SelectedItem != null &&
selectedId != Database.Entities.DefaultCategory.Id;
}
@@ -260,17 +260,17 @@ public partial class FeedsOptionsPanel
Database.Entities.SaveChanges(() => Database.Entities.Categories.Add(category));
- CategoryListBox.SelectedItem = category;
+ CategoryDataGrid.SelectedItem = category;
SetCategoryButtonStates();
}
private void EditSelectedCategory()
{
- if (CategoryListBox.SelectedItem == null)
+ if (CategoryDataGrid.SelectedItem == null)
return;
- var category = (Category) CategoryListBox.SelectedItem;
+ var category = (Category) CategoryDataGrid.SelectedItem;
var categoryWindow = new CategoryWindow();
@@ -279,7 +279,7 @@ public partial class FeedsOptionsPanel
private void DeleteSelectedCategory()
{
- var category = (Category) CategoryListBox.SelectedItem;
+ var category = (Category) CategoryDataGrid.SelectedItem;
if (MessageBox.Show(ParentWindow, string.Format(Properties.Resources.ConfirmDeleteCategory, category.Name), Properties.Resources.ConfirmDeleteTitle, MessageBoxButton.YesNo, MessageBoxImage.Question, MessageBoxResult.No) == MessageBoxResult.No)
return;
@@ -289,12 +289,12 @@ public partial class FeedsOptionsPanel
foreach (var feed in Database.Entities.Feeds.Where(f => f.CategoryId == category.Id))
Database.Entities.SaveChanges(() => feed.CategoryId = defaultCategory.Id);
- var index = CategoryListBox.SelectedIndex;
+ var index = CategoryDataGrid.SelectedIndex;
- if (index == CategoryListBox.Items.Count - 1)
- CategoryListBox.SelectedIndex = index - 1;
+ if (index == CategoryDataGrid.Items.Count - 1)
+ CategoryDataGrid.SelectedIndex = index - 1;
else
- CategoryListBox.SelectedIndex = index + 1;
+ CategoryDataGrid.SelectedIndex = index + 1;
Database.Entities.SaveChanges(() => Database.Entities.Categories.Remove(category));
@@ -316,7 +316,7 @@ public partial class FeedsOptionsPanel
DeleteSelectedCategory();
}
- private void HandleCategoryListBoxSelectionChanged(object sender, SelectionChangedEventArgs e)
+ private void HandleCategoryDataGridSelectionChanged(object sender, SelectionChangedEventArgs e)
{
if (_collectionViewSource == null)
{
@@ -324,13 +324,13 @@ public partial class FeedsOptionsPanel
_collectionViewSource.SortDescriptions.Add(new SortDescription("Name", ListSortDirection.Ascending));
_collectionViewSource.Filter += HandleCollectionViewSourceFilter;
- FeedListBox.ItemsSource = _collectionViewSource.View;
+ FeedDataGrid.ItemsSource = _collectionViewSource.View;
}
_collectionViewSource.View.Refresh();
- if (FeedListBox.Items.Count > 0)
- FeedListBox.SelectedIndex = 0;
+ if (FeedDataGrid.Items.Count > 0)
+ FeedDataGrid.SelectedIndex = 0;
SetFeedButtonStates();
SetCategoryButtonStates();
@@ -338,14 +338,14 @@ public partial class FeedsOptionsPanel
private void HandleCollectionViewSourceFilter(object sender, FilterEventArgs e)
{
- var selectedCategory = (Category) CategoryListBox.SelectedItem;
+ var selectedCategory = (Category) CategoryDataGrid.SelectedItem;
var feed = (Feed) e.Item;
e.Accepted = feed.CategoryId == selectedCategory.Id;
}
- private void CategoryListBox_Drop(object sender, DragEventArgs e)
+ private void HandleCategoryDataGridRowDrop(object sender, DragEventArgs e)
{
var feedList = (List) e.Data.GetData(typeof(List));
@@ -361,31 +361,21 @@ public partial class FeedsOptionsPanel
dataGridRow.FontWeight = FontWeights.Normal;
}
- private void HandleListBoxItemPreviewMouseMove(object sender, MouseEventArgs e)
- {
- if (e.LeftButton != MouseButtonState.Pressed)
- return;
-
- var selectedItems = FeedListBox.SelectedItems.Cast().ToList();
-
- DragDrop.DoDragDrop(FeedListBox, selectedItems, DragDropEffects.Move);
- }
-
- private void CategoryListBox_DragEnter(object sender, DragEventArgs e)
+ private void HandleCategoryDataGridRowDragEnter(object sender, DragEventArgs e)
{
var dataGridRow = (DataGridRow) sender;
dataGridRow.FontWeight = FontWeights.Bold;
}
- private void CategoryListBox_DragLeave(object sender, DragEventArgs e)
+ private void HandleCategoryDataGridRowDragLeave(object sender, DragEventArgs e)
{
var dataGridRow = (DataGridRow) sender;
dataGridRow.FontWeight = FontWeights.Normal;
}
- private void HandleListBoxItemMouseDoubleClick(object sender, MouseButtonEventArgs e)
+ private void HandleFeedDataGridRowMouseDoubleClick(object sender, MouseButtonEventArgs e)
{
EditSelectedFeed();
}
@@ -396,20 +386,14 @@ public partial class FeedsOptionsPanel
bulkFeedWindow.Display(Window.GetWindow(this));
}
- private void HandleFeedListPreviewMouseLeftButtonDown(object sender, MouseButtonEventArgs e)
+ private void HandleFeedDataGridRowPreviewMouseLeftButtonDown(object sender, MouseButtonEventArgs e)
{
- // Get the object that was clicked on
- var originalSource = (DependencyObject) e.OriginalSource;
+ var selectedItems = FeedDataGrid.SelectedItems.Cast().ToList();
- // Look for a row that contains the object
- var dataGridRow = (DataGridRow) FeedListBox.ContainerFromElement(originalSource);
-
- // If the selection already contains this row then ignore it
- if (dataGridRow != null && FeedListBox.SelectedItems.Contains(dataGridRow.Item))
- e.Handled = true;
+ DragDrop.DoDragDrop(FeedDataGrid, selectedItems, DragDropEffects.Move);
}
- private void CategoryListBox_MouseDoubleClick(object sender, MouseButtonEventArgs e)
+ private void HandleCategoryDataGridRowMouseDoubleClick(object sender, MouseButtonEventArgs e)
{
if (!EditCategoryButton.IsEnabled)
return;
@@ -417,7 +401,7 @@ public partial class FeedsOptionsPanel
EditSelectedCategory();
}
- private void FeedListBox_SelectionChanged(object sender, SelectionChangedEventArgs e)
+ private void HandleFeedDataGridSelectionChanged(object sender, SelectionChangedEventArgs e)
{
SetFeedButtonStates();
}
diff --git a/Application/Properties/Resources.Designer.cs b/Application/Properties/Resources.Designer.cs
index d0db179..19d7bb0 100644
--- a/Application/Properties/Resources.Designer.cs
+++ b/Application/Properties/Resources.Designer.cs
@@ -733,7 +733,7 @@ namespace FeedCenter.Properties {
}
///
- /// Looks up a localized string similar to Feed _link contains:.
+ /// Looks up a localized string similar to Feed link contains.
///
public static string FeedLinkFilterLabel {
get {
diff --git a/Application/Properties/Resources.resx b/Application/Properties/Resources.resx
index be4df71..9f530a9 100644
--- a/Application/Properties/Resources.resx
+++ b/Application/Properties/Resources.resx
@@ -419,7 +419,7 @@
Edit Multiple Feeds
- Feed _link contains:
+ Feed link contains
All
diff --git a/Application/Xml/XmlSanitizingStream.cs b/Application/Xml/XmlSanitizingStream.cs
index 0cae3ee..ac817da 100644
--- a/Application/Xml/XmlSanitizingStream.cs
+++ b/Application/Xml/XmlSanitizingStream.cs
@@ -128,8 +128,6 @@ public class XmlSanitizingStream : StreamReader
return nextCharacter;
} // method
- #region Read*() method overrides
-
// The following methods are exact copies of the methods in TextReader,
// extracting by disassembling it in Reflector
@@ -219,6 +217,4 @@ public class XmlSanitizingStream : StreamReader
return builder.ToString();
}
-
- #endregion
} // class
\ No newline at end of file