fix(ui): stop row buttons flashing disabled while a row command runs

Shared AsyncRelayCommands disabled every row's button during execution.
This commit is contained in:
mika kuns
2026-09-30 08:13:26 +02:00
parent 81dcaebfba
commit 2558e02ba3
@@ -1173,7 +1173,7 @@ public sealed partial class TasksIslandViewModel : ViewModelBase, IDisposable
TasksChanged?.Invoke(this, EventArgs.Empty); TasksChanged?.Invoke(this, EventArgs.Empty);
} }
[RelayCommand] [RelayCommand(AllowConcurrentExecutions = true)]
private async Task ToggleDoneAsync(TaskRowViewModel row) private async Task ToggleDoneAsync(TaskRowViewModel row)
{ {
if (_worker is null) return; if (_worker is null) return;
@@ -1237,7 +1237,7 @@ public sealed partial class TasksIslandViewModel : ViewModelBase, IDisposable
TasksChanged?.Invoke(this, EventArgs.Empty); TasksChanged?.Invoke(this, EventArgs.Empty);
} }
[RelayCommand] [RelayCommand(AllowConcurrentExecutions = true)]
private async Task ToggleStarAsync(TaskRowViewModel row) private async Task ToggleStarAsync(TaskRowViewModel row)
{ {
row.IsStarred = !row.IsStarred; row.IsStarred = !row.IsStarred;
@@ -1403,7 +1403,7 @@ public sealed partial class TasksIslandViewModel : ViewModelBase, IDisposable
catch (Exception ex) { ErrorReported?.Invoke(Loc.T("vm.tasksIsland.sendToQueueFailed", ex.Message)); } catch (Exception ex) { ErrorReported?.Invoke(Loc.T("vm.tasksIsland.sendToQueueFailed", ex.Message)); }
} }
[RelayCommand] [RelayCommand(AllowConcurrentExecutions = true)]
private async Task RemoveFromQueueAsync(TaskRowViewModel? row) private async Task RemoveFromQueueAsync(TaskRowViewModel? row)
{ {
if (row is null || _worker is null) return; if (row is null || _worker is null) return;
@@ -1700,7 +1700,7 @@ public sealed partial class TasksIslandViewModel : ViewModelBase, IDisposable
Regroup(); Regroup();
} }
[RelayCommand] [RelayCommand(AllowConcurrentExecutions = true)]
private async Task RefineTask(TaskRowViewModel row) private async Task RefineTask(TaskRowViewModel row)
{ {
if (row is null || !row.CanRefine) return; if (row is null || !row.CanRefine) return;