Fix toolbar button handling

This commit is contained in:
2023-04-26 22:14:49 -04:00
parent 7638d9c2c7
commit ac7c20e6bf
3 changed files with 9 additions and 4 deletions

View File

@@ -93,6 +93,7 @@ public partial class MainWindow
// Update the display // Update the display
DisplayCategory(); DisplayCategory();
DisplayFeed(); DisplayFeed();
UpdateToolbarButtonState();
Settings.Default.LastCategoryID = _currentCategory?.Id.ToString() ?? string.Empty; Settings.Default.LastCategoryID = _currentCategory?.Id.ToString() ?? string.Empty;
} }

View File

@@ -16,12 +16,16 @@ public partial class MainWindow
{ {
case MouseButton.XButton1: case MouseButton.XButton1:
if (PreviousToolbarButton.IsEnabled)
PreviousFeed(); PreviousFeed();
break; break;
case MouseButton.XButton2: case MouseButton.XButton2:
if (NextToolbarButton.IsEnabled)
NextFeed(); NextFeed();
break; break;
} }
} }

View File

@@ -188,7 +188,7 @@ public partial class MainWindow : IDisposable
private void UpdateToolbarButtonState() private void UpdateToolbarButtonState()
{ {
// Cache the feed count to save (a little) time // Cache the feed count to save (a little) time
var feedCount = _feedList?.Count() ?? 0; var feedCount = Settings.Default.DisplayEmptyFeeds ? _feedList.Count() : _feedList.Count(x => x.Items.Any(y => !y.BeenRead));
// Set button states // Set button states
PreviousToolbarButton.IsEnabled = feedCount > 1; PreviousToolbarButton.IsEnabled = feedCount > 1;
@@ -198,7 +198,7 @@ public partial class MainWindow : IDisposable
OpenAllToolbarButton.IsEnabled = feedCount > 0; OpenAllToolbarButton.IsEnabled = feedCount > 0;
MarkReadToolbarButton.IsEnabled = feedCount > 0; MarkReadToolbarButton.IsEnabled = feedCount > 0;
FeedLabel.Visibility = feedCount == 0 ? Visibility.Hidden : Visibility.Visible; FeedLabel.Visibility = feedCount == 0 ? Visibility.Hidden : Visibility.Visible;
FeedButton.Visibility = feedCount > 1 ? Visibility.Hidden : Visibility.Visible; FeedButton.Visibility = feedCount == 0 ? Visibility.Hidden : Visibility.Visible;
CategoryGrid.Visibility = _database.Categories.Count > 1 ? Visibility.Visible : Visibility.Collapsed; CategoryGrid.Visibility = _database.Categories.Count > 1 ? Visibility.Visible : Visibility.Collapsed;
} }