Collapse empty toast label to prevent gap above message
Details
Hide the FriendlyLabel TextBlock when empty so the StackPanel
spacing doesn't push the message text down.
Fix runtime type resolution crash in density bindings
Details
Replace compiled binding cast syntax ((vm:TasksViewModel)DataContext)
with reflection binding fallback $parent[UserControl].DataContext inside
DataTemplate — the cast syntax can't resolve plugin types at runtime
within a template context.
Remove FYI label from Info toasts
Details
Info toasts now show only the message without a header label.
Success/Warning/Error toasts retain their labels.
Add View Settings tab with item density modes to Tasks plugin
Details
Move Flat/GTD/Calendar grouping selector from inline sub-mode toggle
into a new "View" tab in Tasks Settings. Add "List Item Density" setting
with Full/Balanced/Compact modes that control item card visual density:
- Full: status color bar, priority label, timer button, tags
- Balanced (default): priority dot, title, metadata, tags
- Compact: priority dot, title, metadata only
Remove drag handle from all densities (press-and-hold drag still works).
Both ListSubMode and ListItemDensity persist across restarts via
IPluginSettings. StatusMessage moved into the header row to reclaim
vertical space formerly used by the sub-mode toggle row.
Fix Ctrl+C not killing app when launched via build.sh
Details
The script ran dotnet run as a foreground process, but with
set -euo pipefail, bash's default SIGINT handling could leave
the child process running. Now the app is launched in the
background with an explicit trap that forwards SIGINT/SIGTERM
to the child PID and waits for it to exit cleanly.
Get notified about new releases