Fix wiki page selection lost after visiting trash view
Details
When entering the trash view, the TreeView is hidden via IsVisible
binding. Avalonia clears SelectedItem on hidden TreeViews, which
nulled SelectedNode and lost the user's page context. On returning
from trash, no page was selected in the tree.
Fix: stash SelectedNode before entering trash, suppress the null
selection change while trash is showing, and restore the stashed
selection when leaving trash via FindNodeById.
Add fade-in animation to context menus and menu flyouts
Details
MenuFlyoutPresenter and ContextMenu now have a subtle 120ms open
animation: fade from opacity 0 to 1 with a -4px Y translate slide-in,
using CubicEaseOut easing. The animation runs each time the popup
enters the visual tree (i.e., each open).
Drop shadows were already defined (0 8 24 0 #40000000, 0 2 6 0
#28000000) — this adds the missing entrance transition.
Replace "Push to Wiki" text button with composite sync icon
Details
Swap the text-heavy "Push to Wiki" button for a compact icon-only
button that layers the GitHub octocat logo inside circular sync
arrows. Tooltip reads "Sync to GitHub Wiki". Matches the visual
language of the sync button in the Wiki Sources overlay.
Wiki sync: auto-push on save + delete from GitHub
Details
- Add DeletePageFromRemoteAsync to WikiSyncService: deletes the file
from the local clone and commits/pushes the removal to GitHub
- Wire into DeletePagePermanentlyAsync: when permanently deleting a
wiki page, remove it from GitHub first (non-fatal on failure)
- Update confirmation dialog for wiki pages to mention GitHub removal
- Auto-push wiki pages on save: after SaveCurrentPageAsync succeeds,
fire-and-forget PushPageAsync in background (non-fatal on failure)
- Keep manual "Push to Wiki" button as fallback for failed auto-pushes
Remove "Create Note from Task" feature — violates SDK boundary
Details
Tasks plugin must not be aware of Notes. The TaskToNoteService was
sending SDK messages directly to privstack.notes with hardcoded page
structure knowledge, and the context menus exposed "Create Note" items
in both the list view and detail panel.
Removed:
- TaskToNoteService.cs (entire file)
- ConvertToNoteAsync / ConvertToNoteByItemAsync relay commands
- "Create Note" menu item from list view context menu (TasksView.axaml)
- AI context menu from detail panel (TaskDetailPanel.axaml.cs)
- TaskToNoteService field and multi-param SetAiService wiring
Preserved: all other AI features (description rewrite, title generation,
Q&A description builder) which operate within the Tasks plugin boundary.
Get notified about new releases