feat(ui): open Settings from the Mission Control header

This commit is contained in:
Mika Kuns
2026-06-25 16:49:20 +02:00
parent f6ecfc995f
commit 7f4dc8b973
6 changed files with 38 additions and 6 deletions

View File

@@ -214,6 +214,7 @@ public sealed partial class IslandsShellViewModel : ViewModelBase, IDisposable
MissionControl = missionControl;
MissionControl.OpenInApp = id => _ = RevealTaskAsync(id);
MissionControl.ShowDetached = (monitor, reDock) => Dialogs?.ShowDetachedMonitor(monitor, reDock);
MissionControl.OpenSettingsRequested = () => Lists.OpenSettingsCommand.Execute(null);
_updateCheck = updateCheck;
_installerLocator = installerLocator;
_workerLocator = workerLocator;

View File

@@ -37,6 +37,9 @@ public sealed partial class MissionControlViewModel : ViewModelBase, IDisposable
// invoked when that window closes.
public Action<TaskMonitorViewModel, Action>? ShowDetached { get; set; }
// View-layer seam: open the app Settings modal from the Mission Control window.
public Action? OpenSettingsRequested { get; set; }
public bool HasMonitors => Monitors.Count > 0;
public MissionControlViewModel(IDbContextFactory<ClaudeDoDbContext> dbFactory, IWorkerClient worker)
@@ -115,6 +118,9 @@ public sealed partial class MissionControlViewModel : ViewModelBase, IDisposable
}
}
[RelayCommand]
private void OpenSettings() => OpenSettingsRequested?.Invoke();
public void MoveMonitor(TaskMonitorViewModel dragged, TaskMonitorViewModel target)
{
if (ReferenceEquals(dragged, target)) return;