diff --git a/src/ClaudeDo.Ui/ViewModels/TaskListViewModel.cs b/src/ClaudeDo.Ui/ViewModels/TaskListViewModel.cs index 9b89662..822fff0 100644 --- a/src/ClaudeDo.Ui/ViewModels/TaskListViewModel.cs +++ b/src/ClaudeDo.Ui/ViewModels/TaskListViewModel.cs @@ -24,7 +24,7 @@ public partial class TaskListViewModel : ViewModelBase public ObservableCollection Tasks { get; } = new(); [ObservableProperty] private TaskItemViewModel? _selectedTask; - [ObservableProperty] private string? _currentListId; + [ObservableProperty, NotifyCanExecuteChangedFor(nameof(AddTaskCommand))] private string? _currentListId; public event Action? SelectedTaskChanged; @@ -69,7 +69,9 @@ public partial class TaskListViewModel : ViewModelBase } } - [RelayCommand] + private bool CanAddTask() => CurrentListId is not null; + + [RelayCommand(CanExecute = nameof(CanAddTask))] private async Task AddTask() { if (CurrentListId is null) return; diff --git a/src/ClaudeDo.Ui/Views/MainWindow.axaml b/src/ClaudeDo.Ui/Views/MainWindow.axaml index b1723e0..884ee4a 100644 --- a/src/ClaudeDo.Ui/Views/MainWindow.axaml +++ b/src/ClaudeDo.Ui/Views/MainWindow.axaml @@ -31,7 +31,7 @@ Margin="4"> - + - +