From 4847c5c0a450cfd272bc33ed3ca440be693184b9 Mon Sep 17 00:00:00 2001 From: Mika Kuns Date: Thu, 18 Jun 2026 16:22:29 +0200 Subject: [PATCH] feat(ui): My Day actions, orphan-aware grouping, menu restructure Pending UI work: - My Day add/remove context actions on task rows (parent removal cascades to children) - orphan-aware grouping: a child whose parent isn't in view renders as a top-level row, not an indented draft - shell menu restructure (Worker / Repositories submenus); 'Finalize plan' action, drop 'Queue subtasks sequentially' - notes editor refinements - subtask-row hover tweak (Surface3, no transition) - bump Avalonia 12.0.0 -> 12.0.4 --- src/ClaudeDo.App/ClaudeDo.App.csproj | 8 +- src/ClaudeDo.Localization/locales/de.json | 6 +- src/ClaudeDo.Localization/locales/en.json | 6 +- src/ClaudeDo.Ui/ClaudeDo.Ui.csproj | 2 +- src/ClaudeDo.Ui/Design/IslandStyles.axaml | 7 +- .../Islands/NotesEditorViewModel.cs | 29 +++-- .../ViewModels/Islands/TaskRowViewModel.cs | 38 ++++++- .../Islands/TasksIslandViewModel.cs | 56 ++++++++++ .../Detail/DescriptionStepsCard.axaml.cs | 6 +- .../Views/Islands/DetailsIslandView.axaml.cs | 7 ++ .../Views/Islands/NotesEditorView.axaml | 7 +- .../Views/Islands/NotesEditorView.axaml.cs | 10 ++ .../Views/Islands/TaskRowView.axaml | 16 ++- .../Views/Islands/TaskRowView.axaml.cs | 16 ++- src/ClaudeDo.Ui/Views/MainWindow.axaml | 22 ++-- .../ClaudeDo.Ui.Tests.csproj | 4 +- .../ViewModels/NotesEditorViewModelTests.cs | 21 +++- .../UiVm/TaskRowViewModelPlanningTests.cs | 79 ++++++++++++++ .../UiVm/TasksIslandViewModelPlanningTests.cs | 102 ++++++++++++++++++ 19 files changed, 384 insertions(+), 58 deletions(-) diff --git a/src/ClaudeDo.App/ClaudeDo.App.csproj b/src/ClaudeDo.App/ClaudeDo.App.csproj index 2b2c2b4..b97a76d 100644 --- a/src/ClaudeDo.App/ClaudeDo.App.csproj +++ b/src/ClaudeDo.App/ClaudeDo.App.csproj @@ -14,10 +14,10 @@ - - - - + + + + None All diff --git a/src/ClaudeDo.Localization/locales/de.json b/src/ClaudeDo.Localization/locales/de.json index 9db1802..890b383 100644 --- a/src/ClaudeDo.Localization/locales/de.json +++ b/src/ClaudeDo.Localization/locales/de.json @@ -110,10 +110,12 @@ "ctxRunInteractively": "Interaktiv ausführen", "ctxOpenPlanningSession": "Planungssitzung öffnen", "ctxResumePlanningSession": "Planungssitzung fortsetzen", + "ctxFinalizePlanningSession": "Plan finalisieren", "ctxDiscardPlanningSession": "Planungssitzung verwerfen", - "ctxQueueSubtasks": "Teilaufgaben nacheinander einreihen", "ctxScheduleFor": "Planen für...", "ctxClearSchedule": "Zeitplan entfernen", + "ctxRemoveFromMyDay": "Aus Mein Tag entfernen", + "ctxAddToMyDay": "Zu Mein Tag hinzufügen", "badgeDraft": "ENTWURF", "badgePlanned": "GEPLANT", "approve": "Genehmigen", @@ -421,6 +423,8 @@ "shell": { "menu": { "help": "Hilfe", + "worker": "Worker", + "repositories": "Repositories", "checkForUpdates": "Nach Updates suchen", "restartWorker": "Worker neu starten", "worktrees": "Worktrees…", diff --git a/src/ClaudeDo.Localization/locales/en.json b/src/ClaudeDo.Localization/locales/en.json index b732dc2..db3d761 100644 --- a/src/ClaudeDo.Localization/locales/en.json +++ b/src/ClaudeDo.Localization/locales/en.json @@ -110,10 +110,12 @@ "ctxRunInteractively": "Run interactively", "ctxOpenPlanningSession": "Open planning Session", "ctxResumePlanningSession": "Resume planning Session", + "ctxFinalizePlanningSession": "Finalize plan", "ctxDiscardPlanningSession": "Discard planning session", - "ctxQueueSubtasks": "Queue subtasks sequentially", "ctxScheduleFor": "Schedule for...", "ctxClearSchedule": "Clear schedule", + "ctxRemoveFromMyDay": "Remove from My Day", + "ctxAddToMyDay": "Add to My Day", "badgeDraft": "DRAFT", "badgePlanned": "PLANNED", "approve": "Approve", @@ -421,6 +423,8 @@ "shell": { "menu": { "help": "Help", + "worker": "Worker", + "repositories": "Repositories", "checkForUpdates": "Check for updates", "restartWorker": "Restart worker", "worktrees": "Worktrees…", diff --git a/src/ClaudeDo.Ui/ClaudeDo.Ui.csproj b/src/ClaudeDo.Ui/ClaudeDo.Ui.csproj index d3f27bd..534a4b6 100644 --- a/src/ClaudeDo.Ui/ClaudeDo.Ui.csproj +++ b/src/ClaudeDo.Ui/ClaudeDo.Ui.csproj @@ -7,7 +7,7 @@ - + diff --git a/src/ClaudeDo.Ui/Design/IslandStyles.axaml b/src/ClaudeDo.Ui/Design/IslandStyles.axaml index d4737d3..b48ac6c 100644 --- a/src/ClaudeDo.Ui/Design/IslandStyles.axaml +++ b/src/ClaudeDo.Ui/Design/IslandStyles.axaml @@ -871,14 +871,9 @@ - - - - -